Jaa


Uusien mukautettujen entiteettilomakkeiden lisääminen (Project Service Automation 2. x)

Tärkeä

Dynamics 365 Project Service Automation on nyt Dynamics 365 Project Operations. Lisätietoja on kohdassa Project Service Automationin siirtymisvaihe.

Tyyppikenttä

Dynamics 365 Project Service Automation käyttää Mahdollisuus-, Tarjous-, Tilaus- ja Lasku-entiteettien Tyyppi (msdyn_ordertype) -kenttää erottaakseen kyseisten entiteettien työperusteiset versiot nimikeperusteisista ja palveluperusteisista versioista. PSA käsittelee kyseisten entiteettien työperusteiset versiot. Suuri määrä ratkaisun asiakas- ja palvelinpuolen liiketoimintalogiikasta perustuu Tyyppi -kenttään. Siksi on tärkeää, että kenttä valmistellaan oikealla arvolla, kun entiteetit luodaan. Virheellinen arvo voi aiheuttaa virheellistä toimintaa, ja osa liiketoimintalogiikasta saatetaan suorittaa virheellisesti.

Automaattinen lomakkeenvaihto

Myyntientiteettitietueiden virheellisestä valmistelusta ja muokkauksesta aiheutuvan mahdollisen tietojen vaurioitumisen ja odottamattomien toimintojen ehkäisemiseksi PSA sisältää nyt automaattisen lomakkeenvaihdon logiikkaa valmiissa lomakkeissa. Tämä logiikka vie käyttäjät oikeaan lomakkeeseen työperusteisellä versiolla tai millä tahansa muulla entiteettien Mahdollisuus, Tarjous, Tila tai Lasku tyypillä työskentelyä varten. Kun käyttäjä avaa entiteetin Mahdollisuus, Tarjous, Tilaus tai Lasku työperusteisen version, lomake vaihtuu lomakkeeksi Projektitiedot.

Automaattisessa lomakkeenvaihtologiikassa käytetään formId-arvon ja msdyn_ordertype-kentän välistä yhteyttä. Tähän yhdistämismääritykseen on lisätty kaikki valmiit lomakkeet. Mukautetut lomakkeet on kuitenkin lisättävä manuaalisesti ilmaisemaan, missä entiteetin versiossa ne on tarkoitus käsitellä. Tämä perustuu msdyn_ordertype-kenttään. Jos lomakkeenvaihto puuttuu yhdistämismäärityksestä, logiikka vaihtaa valmiiseen lomakkeeseen sen arvon perusteella, joka on tallennettu entiteetin msdyn_ordertype-kenttään.

Mukautettujen lomakkeiden lisääminen ja lomakkeenvaihtologiikan käyttöönotto

Seuraavassa esimerkissä esitetään mukautetun Omat projektitiedot -lomakkeen lisääminen siten, että se toimii työperusteisten mahdollisuuksien kanssa. Samaa prosessia käytetään mukautettujen lomakkeiden lisäämiseen siten, että ne toimivat yhdessä tarjousten, tilausten ja laskujen kanssa.

Voit luoda mukautetun version Projektitiedot-lomakkeesta seuraavalla tavalla.

  1. Avaa Mahdollisuus-entiteetissä lomake Projektitiedot ja tallenna kopio siitä nimellä Omat projektitiedot.

  2. Avaa uusi lomake ja varmista sitten ominaisuuksissa, että ne sisältävät Projektitiedot-lomakkeen lomakkeenvalmistelun komentosarjat.

    Tärkeä

    Älä poista komentosarjoja. Muulloin osa tiedoista saatetaan valmistella virheellisesti.

  3. Tarkista, että lomake sisältää Tyyppi (msdyn_ordertype) -kentän.

    Tärkeä

    Älä poista tätä kenttää. Muussa tapauksessa valmistelukomentosarjat epäonnistuvat.

  4. Etsi uuden lomakkeen formId-arvo. Voit tehdä tämän kahdella eri tavalla.

    • Vie Omat projektitiedot lomake hallitsemattoman ratkaisun osana ja etsi sitten formId -arvo viedyn ratkaisun customization.xml-tiedostosta.
    • Avaa lomake Omat projektitiedot lomake-editorissa ja etsi sitten fromid -parametrin vieressä URL-osoitteessa oleva GUID-tunnus seuraavassa kuvassa näkyvällä tavalla.

    Uuden lomakkeen formId-arvo URL-osoitteessa.

  5. Luo msdyn_ordertype yhdistämismääritys formId-arvolle muokkaamalla msdyn_/SalesDocument/PSSalesDocumentCustomFormIds.js-verkkoresurssia. Poista koodi resurssista ja korvaa se seuraavalla koodilla.

    define(["require", "exports"], function (require, exports) {
        "use strict";
        var SalesDocumentCustomFormIds = (function () {
            function SalesDocumentCustomFormIds() {
            }
            SalesDocumentCustomFormIds.overwriteFormIds = function (mappedFormIds) {
                /*
                ---- Notes ----
                mappedFormIds[SalesEntity][OrderType] => The array of forms IDs that support particular entity and order type
                Add or overwrite customized formId for the particular entity and order type by calling:
                    mappedFormIds[<EntityType>][<msdyn_ordertype>].push("<formId>");
                Allowed msdyn_ordertype values for reference:
                    ServiceBased: 690970002 (Field Service version of the entity)
                    WorkBased: 192350001 (PSA version of the entity)
                    ItemBased: 192350000 (Regular out of the box entity)
                Uncomment and update one of the following lines to register custom PSA form for required entity:
                */		
                //mappedFormIds[1][192350001].push("<formId>"); //Quote
                //mappedFormIds[5][192350001].push("<formId>"); //Quote Line
                //mappedFormIds[2][192350001].push("<formId>"); //Sales Order
                //mappedFormIds[6][192350001].push("<formId>"); //Sales Order Line
                // In this example we have added new form for Opportunity
                mappedFormIds[0][192350001].push("192EE537-DCC4-45D3-B7AF-EA694B9113D2"); //Opportunity
                //mappedFormIds[4][192350001].push("<formId>"); //Opportunity Line
            };
            return SalesDocumentCustomFormIds;
        }());
        exports.default = SalesDocumentCustomFormIds;
    });
    
  6. Tallenna ja julkaise mukautukset.