Package Deployer құралы үшін бумалар жасау
Package Deployer құралы әкімшілердің Microsoft Dataverse даналарында бумаларды орналастыруына мүмкіндік береді. Package Deployer бумасы келесілердің бірінен тұруы немесе барлығын қамтуы мүмкін:
- Dataverse шешім файлдарының бірі немесе бірнешеуі.
- Configuration Migration Tool құралынан алынған құрылымданбаған файлдар немесе экспортталған конфигурация деректері файлы. Құрал туралы қосымша ақпаратты Configuration Migration Tool құралы арқылы конфигурация деректерін даналар және ұйымдар арасында жылжыту бөлімінен қараңыз.
- Бума Dataverse данасында орналастырылмас бұрын, кезінде немесе орналастырылғаннан кейін іске қосуға болатын теңшелетін код.
- HTML мазмұны орналастыру үрдісінің басында және аяғында көрсетілетін бумаға арналған. Бұл контент бумада орналастырылған шешімдер және файлдардың сипаттамасын ұсыну үшін пайдалы болуы мүмкін.
Ескертпе
Қосылатын модуль бумасы деп аталатын басқа бума түрі бар. Мұндай бума түрі қосылатын модульге тәуелді жинақтарға арналған және Package Deployer бумаларына қатысы жоқ.
Алғышарттар
- Бумаға қосу керек барлық шешімдер мен басқа файлдардың бар екеніне көз жеткізіңіз.
- Visual Studio 2019 немесе одан кейінгі, немесе Visual Studio Код.
Процеске шолу
Бума жасау Package Deployer үшін келесі қадамдарды орындаңыз.
- Visual Studio немесе MSBuild жобасын жасаңыз
- Жобаға шешімдер мен басқа файлдарды қосыңыз
- Берілген HTML файлдарын жаңартыңыз (міндетті емес)
- Буманың конфигурация мәндерін көрсетіңіз
- Буманың реттелетін кодын анықтаңыз
- Буманы құрастырыңыз және орналастырыңыз
Бұл қадамдар осы мақалада егжей-тегжейлі сипатталған.
Бума жобасын жасаңыз
Бірінші қадам — бума үшін Visual Studio немесе MSBuild жобасын жасау. Ол үшін әзірлеу компьютерінде екі қолжетімді құрал кеңейтімінің бірі орнатылған болуы керек. Егер Visual Studio Code пайдалансаңыз, Microsoft Power Platform CLI қызметін орнатыңыз. Ал Visual Studio 2019 бағдарламасын пайдалансаңыз, Visual Studio бағдарламасына арналған Power Platform Tools құралдарын орнатыңыз. Power Platform Қазіргі уақытта құралдарды кеңейту тек 2019 жылға Visual Studio ғана қолжетімді. Дегенмен жасалған жобаны Visual Studio 2019 немесе одан кейінгі нұсқасының көмегімен жасауға болады.
Қажетті құрал кеңейтімінің көмегімен жобаны жасау жолын білу үшін төмендегі жерден сәйкес қойыншаны таңдаңыз. Екі құрал да жобаны ұқсас пішімде шығарады.
Бастапқы буманы жасау үшін pac package init пәрменін орындаңыз. Қосымша ақпарат: pac бумасы
pac package init help
pac package init --outputDirectory DeploymentPackage
Алынған CLI шығысында төменде көрсетілген қалталар мен файлдар бар. Мұнда мысал ретінде "DeploymentPackage" қалта атауы пайдаланылған.
C:.
└───DeploymentPackage
│ DeploymentPackage.csproj
│ PackageImportExtension.cs
│
└───PkgAssets
ImportConfig.xml
manifest.ppkg.json
Жасалған жобада PkgAsset қалтасы мен PackageImportExtension.cs файлынан Импорттау Конфиг.xml конфигурация файлын табыңыз. Бұл файлдарды кейінірек осы мақалада сипатталғандай өзгертесіз.
Бума файлдарын қосу
Бума жобасын жасағаннан кейін, сол жобаға шешімдер мен басқа файлдарды қоса бастауыңызға болады.
CLI қызметін пайдаланған кезде, сыртқы бумаларды, шешімдерді және сілтемелерді бума жобасына add ішкі пәрмендерінің бірін пайдаланып қосуға болады. Ішкі пәрмендер тізімін көру үшін pac package help
пәрменін енгізіңіз. Бумаға шешім қосайық.
> pac package add-solution help
Commands:
Usage: pac package add-solution --path [--import-order] [--skip-validation] [--publish-workflows-activate-plugins] [--overwrite-unmanaged-customizations] [--import-mode] [--missing-dependency-behavior] [--dependency-overrides]
> cd .\DeploymentPackage\
> pac package add-solution --path ..\TestSolution_1_0_0_1_managed.zip
The item was added successfully.
Буманы конфигурациялау
Бума туралы ақпаратты жобадағы ImportConfig.xml файлына қосу арқылы бума конфигурациясын анықтаңыз. Өңделетін файлды ашыңыз. Келесі тізімде конфигурация файлындағы әр параметр және түйін туралы ақпарат берілген.
installsampledata
True
немесеfalse
. Егерtrue
күйінде болса, деректердің үлгісін Dataverse данасына орнатады. Бұл деректер Dataverse қызметіндегі Параметрлер>Деректерді басқару аймағынан орнатуға болатын сол деректер үлгісі болып табылады.waitforsampledatatoinstall
Шын немесе жалған. Егер шын күйінде болса және деректер үлгісін орнату да шын күйіне орнатылса, буманы орналастырмас бұрын деректердің үлгісін орнатылуы күтіледі.Ескертпе
Егер
waitforsampledatatoinstall
шын күйіне орнататын болсаңыз деректер үлгісін орнатудышын күйіне орнатыңыз.agentdesktopzipfile
Ашуға арналған zip файлының атауы. Егер сіз мұнда .zip файлының атауын көрсетсеңіз, ол файл мазмұнын ашқыңыз келетін орынды таңдауды сұрайтын буманы орналастыру процесі барысында экран қосады.Бұл атрибут көбінесе Dynamics 365 қызметіне арналған Unified Service Desk бумаларын жасау үшін пайдаланылады. Unified Service Desk туралы ақпаратты Unified Service Desk 3.0 басқару нұсқаулығы тақырыбынан қараңыз.
agentdesktopexename
Орналастыру процесінің соңында шақырылатын zip файлындағы немесе URL мекенжайындағы .exe немесе .msi файлының атауы.Бұл атрибут көбінесе Unified Service Desk бумаларын жасау үшін пайдаланылады.
crmmigdataimportfile
Configuration Migration Tool құралы көмегімен экспортталатын әдепкі конфигурация деректері файлының (.zip) файл атауы.Сондай-ақ Package Deployer іске қосу барысында жаңа орындалу уақыты параметрлерін пайдалану арқылы анықталған тіл идентификаторына (LCID) негізделген конфигурация файлының локализацияланған нұсқасын импорттауға болады. Бумадағы конфигурация деректері файлының локализацияланған нұсқаларын көрсету үшін
<cmtdatafile>
түйінін (кейінірек түсіндірілген) пайдаланыңыз да, содан соң орындалу уақыты параметрлерін пайдаланып көрсетілген тіл идентификаторына негізделген конфигурация деректері файлын импорттауға арналған логиканы көрсету үшінOverrideConfigurationDataFileLanguage
әдісін (кейінірек түсіндірілген) пайдаланыңыз. Бір уақытта бума арқылы бірнеше конфигурация деректер файлын импорттау мүмкін емес.For Dataverse (жергілікті), егер конфигурация деректер файлында пайдаланушы ақпараты болса және бастапқы және мақсатты Dataverse нұсқалар бірдей Active Directory доменінде болса, пайдаланушы ақпараты мақсатты Dataverse нұсқаға импортталады. Пайдаланушы ақпаратын басқа домендегі Dataverse (жергілікті) данаға импорттау үшін жобада Configuration Migration Tool құралы арқылы жасалған пайдаланушылық салыстыру файлын (.xml) қамтып, оны кейінірек түсіндірілген
<cmtdatafile>
түйініндегіusermapfilename
төлсипатын пайдаланып конфигурация деректері файлымен бірге көрсету қажет. Пайдаланушы ақпаратын даналарға Dataverse импорттау мүмкін емес.
<solutions>
түйіні
Импортталатын шешімдерді сипаттайтын<configsolutionfile>
түйіндері массивін қамтиды. Осы түйіннің астындағы шешімдердің реті шешімнің Dataverse данасында мақсатты түрде импортталатын ретін көрсетеді.<configsolutionfile>
түйіні
Жеке шешімдерді, сондай-ақ импортталатын әрбір шешімнің келесі ақпаратын көрсету үшін<solutions>
түйіні астындағы осы түйінді пайдаланыңыз:solutionpackagefilename
: Шешімнің .zip файлының атауын көрсетіңіз. Талап етіледі.overwriteunmanagedcustomizations
: Мақсатты Dynamics 365 данасында бұрыннан бар шешімді импорттау кезінде басқарылмайтын теңшелімдерді қайта жазу керектігін көрсетіңіз. Бұл атрибут міндетті емес, егер бұл атрибутты көрсетпесеңіз, әдепкі бойынша бұрыннан бар шешімдегі басқарылмайтын реттеулер 365 нысана динамикасында сақталады.publishworkflowsandactivateplugins
: Шешім импортталғаннан кейін жұмыс ағындарын жариялап, қосылатын модульдерді мақсатты Dynamics 365 данасына белсендіру қажеттігін көрсетіңіз. Бұл атрибут міндетті емес, егер бұл атрибутты көрсетпесеңіз, әдепкі бойынша жұмыс процестері жарияланады және қосылатын модульдер мақсатты Dynamics 365 нұсқасында шешім импортталғаннан кейін белсендіріледі.Бумада көптеген
<configsolutionfile>
түйіндерін қосу арқылы бірнеше шешім файлы атауларын қосуға болады. Мысалы, үш шешім файлының импортталуын қаласаңыз, оларды төменде көрсетілгендей қосыңыз:
<solutions> <configsolutionfile solutionpackagefilename="SampleSolutionOne_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionTwo_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionThree_1_0_managed.zip" /> </solutions>
<filestoimport>
түйіні
Тиісті түрде импортталатын жеке файлдар мен zip файлдарын сипаттай үшін пайдаланылатын<configimportfile>
және<zipimportdetails>
түйіндерін қамтиды.<configimportfile>
түйіні
<configimportfile>
түйіні астындағы бұл түйінді Dataverse қызметіне импортталатын файлды сипаттау үшін пайдаланыңыз. Бумада көптеген<configimportfile>
түйіндерін қосу арқылы бірнеше файлдарды қосуға болады.<filestoimport> <configimportfile filename="File.csv" filetype="CSV" associatedmap="FileMap" importtoentity="FileEntity" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="true" /> <configimportfile filename="File.zip" filetype="ZIP" associatedmap="FileMapName" importtoentity="FileEntity" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="true"/> </filestoimport>
Төменде қолдау көрсетілетін атрибуттардың тізімі берілген:
Төлсипат Сипаттама filename
Импорттық деректерден тұратын файл атауы. Егер файл .zip файлы болса, <zipimportdetails>
түйіні .zip файлындағы әрбір файлдың<zipimportdetail>
түйінімен болуы тиіс.filetype
Бұл мән csv, xml немесе zip болуы мүмкін. associatedmap
Осы фалмен пайдаланылатын Dataverse импорттық деректер картасының атауы. Егер бос болса, жүйені пайдалану әрекеттері осы файл үшін деректерді импорттау картасының атауын анықтайды. importtoentity
Орналастыру процесінің соңында шақырылатын сілтемені беру үшін zip файлында, URL мекенжайында немесе .msi файлында exe атауы болуы мүмкін. datadelimiter
Импорт файлында пайдаланылатын деректерді бөлгіш атауы. Жарамды мәндер - жалғыз дәйексөз немесе қос тырнақша. fielddelimiter
Импорт файлында пайдаланылатын өрісті бөлгіш атауы. Жарамды мәндер үтір немесе қос нүкте немесе жалғыз дәйексөз болып табылады. enableduplicatedetection
Деректерді импорттауда қайталанатын деректерді іздеу ережелерін қосу керектігін анықтайды. Жарамды мәндер – шын немесе жалған. isfirstrowheader
Импорттау файлының бірінші жолында өріс атаулары бар екенін белгілеу үшін пайдаланылады. Жарамды мәндер – true
немесеfalse
.isrecordownerateam
Импорт бойынша жазба иесінің топ болуы қажеттігін көрсетеді. Жарамды мәндер – true
немесеfalse
.owneruser
Жазбаларға иелік ететін пайдаланушы идентификаторын көрсетеді. Әдепкі мән - бұл ағымдағы уақытта жүйеге кірген пайдаланушы. waitforimporttocomplete
Егер true
болса, жалғастыру алдында жүйе импорттың аяқталуын күтеді. Егерfalse
болса, ол тапсырмаларды кезекке қойып, жалғасады.<zipimportdetails>
түйіні
Бұл түйін Dynamics 365 жүйесіне импорттау үшін пайдаланылатын zip файлына қосылған файлдарды сипаттайтын<zipimportdetail>
түйіндерінің массивінен тұрады.<zipimportdetail>
түйіні
<zipimportdetails>
түйіні астындағы бұл түйінді<configimportfile>
түйінінде көрсетілген .zip файлындағы жекке файл туралы ақпаратты беру үшін пайдаланыңыз.<filestoimport> ... ... <zipimportdetails> <zipimportdetail filename="subfile1.csv" filetype="csv" importtoentity="account" /> <zipimportdetail filename="subfile2.csv" filetype="csv" importtoentity="contact" /> </zipimportdetails> </filestoimport>
Төменде қолдау көрсетілетін атрибуттардың тізімі берілген:
Төлсипат Сипаттама filename
Импорттық деректерден тұратын файл атауы. filetype
Бұл мән csv немесе xml болуы мүмкін. importtoentity
Орналастыру процесінің соңында шақырылатын сілтемені беру үшін zip файлында, URL мекенжайында немесе .msi файлында exe атауы болуы мүмкін. <filesmapstoimport>
түйіні
Бұл түйінде импортталатын<configmapimportfile>
түйіндерінің массиві бар. Карта файлдарының реті осы торапта оларды әкелу тәртібі көрсетіледі. Деректер карталары туралы ақпарат алу үшін Импорттау үшін деректер карталарын жасау тақырыбын қараңыз.<configimportmapfile>
түйіні
<filesmapstoimport>
түйіні астындағы бұл түйінді Dataverse жүйесінде импортталатын жеке салыстыру файлы туралы ақпарат беру үшін пайдаланыңыз.<filesmapstoimport> <configimportmapfile filename="FileMap.xml" /> </filesmapstoimport>
<cmtdatafiles>
түйіні
Бұл торапта импорттауға жататын конфигурация деректер файлының локализацияланған нұсқасы бар тораптар массиві<cmtdatafile>
бар.<cmtdatafile>
түйіні
<cmtdatafiles>
түйіні астындағы бұл түйінді локализацияланған конфигурация деректері файлдарын тіл идентификаторы (қажетті) және пайдаланушы ақпаратының салыстыру файлымен (қосымша) бірге көрсету үшін пайдаланыңыз. Мысалы:<cmtdatafiles> <cmtdatafile filename="data_1033.zip" lcid="1033" usermapfilename="UserMap.xml" /> <cmtdatafile filename="data_1041.zip" lcid="1041" usermapfilename="" /> </cmtdatafiles>
Реттелетін логиканы
OverrideConfigurationDataFileLanguage
әдісінде (кейінірек түсіндіріледі) орындалу уақытының параметрлерін (кейінірек түсіндіріледі) пайдаланып тіл идентификаторы (LCID) мәніне негізделген әдепкі (crmmigdataimportfile ішінде көрсетілген) орнына локализацияланған конфигурация деректері файлын импорттау үшін анықтауға болады.Барлығын сақтау пәрменін таңдаңыз.
Келесі xml үлгі
ImportConfig.xml
файлдың мазмұнын білдіреді.<?xml version="1.0" encoding="utf-16"?> <configdatastorage xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" installsampledata="true" waitforsampledatatoinstall="true" agentdesktopzipfile="" agentdesktopexename="" crmmigdataimportfile="data_1033.zip"> <solutions> <configsolutionfile solutionpackagefilename="SampleSolutionOne_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionTwo_1_0_managed.zip" overwriteunmanagedcustomizations="false" publishworkflowsandactivateplugins="true"/> <configsolutionfile solutionpackagefilename="SampleSolutionThree_1_0_managed.zip" /> </solutions> <filestoimport> <configimportfile filename="SampleOption.csv" filetype="CSV" associatedmap="SampleOption" importtoentity="sample_option" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="false"/> <configimportfile filename="File.zip" filetype="ZIP" associatedmap="FileMapName" importtoentity="FileEntity" datadelimiter="" fielddelimiter="comma" enableduplicatedetection="true" isfirstrowheader="true" isrecordownerateam="false" owneruser="" waitforimporttocomplete="true"/> <zipimportdetails> <zipimportdetail filename="subfile1.csv" filetype="csv" importtoentity="account" /> <zipimportdetail filename="subfile2.csv" filetype="csv" importtoentity="contact" /> </zipimportdetails> </filestoimport> <filesmapstoimport> <configimportmapfile filename="SampleOption.xml" /> </filesmapstoimport> <cmtdatafiles> <cmtdatafile filename="data_1033.zip" lcid="1033" usermapfilename="UserMap.xml" /> <cmtdatafile filename="data_1041.zip" lcid="1041" usermapfilename="" /> </cmtdatafiles> </configdatastorage>
Реттелетін кодты қосу
Бума ортаға импортталғанға дейін, импортталу кезінде және импортталған кейін орындалатын реттелетін кодты қосуға болады. Ол үшін келесі нұсқауларды орындаңыз.
Жобаның түбірлік қалтасындағы PackageTemplate.cs (немесе PackageImportExtension.cs) файлын өңдеңіз.
C# файлында келесі әрекеттерді орындай аласыз:
Бума
InitializeCustomExtension
алдын ала анықтау әдісі анықтамасында баптандырылғанда орындалатын реттелмелі кодты енгізіңіз.Бұл әдісті пайдаланушыларға буманы орындау кезінде орындалу уақыты параметрлерін пайдалануға мүмкіндік беру үшін пайдалануға болады. Әзірлеуші ретінде сізде оны пайдаланушы кірісі негізінде жалғастыру үшін код болғанда RuntimeSettings сипатын пайдаланып кез келген орындалу уақыты параметріне қолдау қосуға болады.
Мысалы, келесі үлгі коды шын немесе жалған екі ықтимал мәні бар бума үшін
SkipChecks
деп аталатын орындалу уақыты параметрін іске қосады. Үлгі коды пайдаланушының Package Deployer іске қосу кезінде (немесе командалық жолды немесе PowerShell көмегімен) қандай-да бір орындалу уақыты параметрлерін көрсеткенін тексереді, содан кейін ақпаратты сәйкесінше өңдейді. Пайдаланушы буманы іске қосу кезінде орындалу уақыты параметрін көрсетпесе, RuntimeSettingsмүлік мәні нөлге тең болады.public override void InitializeCustomExtension() { // Do nothing. // Validate the state of the runtime settings object. if (RuntimeSettings != null) { PackageLog.Log(string.Format("Runtime Settings populated. Count = {0}", RuntimeSettings.Count)); foreach (var setting in RuntimeSettings) { PackageLog.Log(string.Format("Key={0} | Value={1}", setting.Key, setting.Value.ToString())); } // Check to see if skip checks is present. if ( RuntimeSettings.ContainsKey("SkipChecks") ) { bool bSkipChecks = false; if (bool.TryParse((string)RuntimeSettings["SkipChecks"], out bSkipChecks)) OverrideDataImportSafetyChecks = bSkipChecks; } } else PackageLog.Log("Runtime Settings not populated"); }
Бұл код буманы импорттау үшін Package Deployer құралын іске қосу кезінде қауіпсіздік тексерістерін өткізіп жіберу қажеттігін көрсету үшін әкімшіге пәрмен жолын немесе Import-CrmPackage командлетін пайдалануға мүмкіндік береді. Қосымша ақпарат: Package Deployer және Windows PowerShell пайдаланып бумаларды орналастыру
Шешімдерді көрсетілген шешімді мақсатты Dataverse данасында жаңарту барысында теңшелімдерді сақтау немесе қайта жазу қажеттігін, сондай-ақ қосылатын модульдер мен жұмыс ағындарын автоматты түрде белсендіру қажеттігін көрсету үшін
PreSolutionImport
алдын ала анықтау әдісі анықтамасында импорттау алдында орындалатын реттелмелі кодты енгізіңіз.Шешімнің
RunSolutionUpgradeMigrationStep
екі нұсқасы арасында деректерді түрлендіруді немесе жаңартуды орындау үшін шамадан тыс әдіс анықтамасын пайдаланыңыз Бұл әдіс тек сіз импорттайтын шешім мақсатты Dataverse нұсқада болған жағдайда ғана аталады.Бұл функция келесі параметрлерді күтеді:
Параметр Сипаттама solutionName
Шешімнің атауы oldVersion
Ескі шешімнің нұсқа нөмірі newVersion
Жаңа шешімнің нұсқа нөмірі oldSolutionId
Ескі шешімнің GUID. newSolutionId
Жаңа шешімнің GUID. Шешімді импорттау
BeforeImportStage
әдісінің алдын ала анықтау анықтамасында аяқталуы алдында орындалатын реттелмелі кодты енгізіңіз. Деректер үлгісі менImportConfig.xml
файлында көрсетілген шешімдердің кейбір тегіс файлдары шешімді импорттау аяқталғанша импортталады.Баптау деректерін импорттау үшін таңдалған тілді жою әдісінің
OverrideConfigurationDataFileLanguage
анықтамасын пайдаланып. Егер көрсетілген тілдің көрсетілген жергілікті идентификат (LCID) жиынтығындағы қол жетімді тілдер тізімінде табылмаса, әдепкі деректер файлы импортталады.ImportConfig.xml
файлындағы<cmtdatafiles>
түйінінде конфигурация деректерінің қолжетімді тілдерін көрсетесіз. Әдепкі конфигурация деректерін импорттау файлыImportConfig.xml
файлындағыcrmmigdataimportfile
төлсипатында көрсетіледі.МақсаттыOverrideDataImportSafetyChecks нұсқада ешқандай деректер жоқ екеніне көз жеткізсеңіз, деректерді тексеруді өткізіп жіберу ( Dataverse = true) осында тиімді болуы мүмкін.
Импорттау
AfterPrimaryImport
> әдісінің алдын ала анықтау анықтамасында аяқталғаннан кейін орындалатын реттелмелі кодты енгізіңіз. Бұрын импортталмаған, шешім импорты басталғанға дейін қалған жалпақ файлдар қазір импортталады.Бума қалтасының әдепкі атауын қалаған бума атауына өзгертіңіз. Ол үшін Шешім жетектеушісі тақтасындағы
PkgFolder
(немесе PkgAssets) қалтасының атауын өзгертіп, содан соңGetImportPackageDataFolderName
сипатындағы қайтару мәнін өңдеңіз.public override string GetImportPackageDataFolderName { get { // WARNING this value directly correlates to the folder name in the Solution Explorer where the ImportConfig.xml and sub content is located. // Changing this name requires that you also change the correlating name in the Solution Explorer return "PkgFolder"; } }
GetNameOfImport
сипатындағы қайтару мәнін өңдеу арқылы буманың атын өзгертіңіз.public override string GetNameOfImport(bool plural) { return "Package Short Name"; }
Бұл қайтарылған мән - «Dynamics 365 Package Deployer » шеберіндегі бума таңдау бетінде пайда болатын буманың атауы.
GetImportPackageDescriptionText
сипатындағы қайтару мәнін өңдеу арқылы буманың сипаттамасын өзгертіңіз.public override string GetImportPackageDescriptionText { get { return "Package Description"; } }
Бұл қайтарылған мән — шебердегі бума таңдау бетіндегі Package Deployer бума атауымен қатар пайда болатын бума сипаттамасы.
GetLongNameOfImport
сипатындағы қайтару мәнін өңдеу арқылы буманың ұзақ атын өзгертіңіз.public override string GetLongNameOfImport { get { return "Package Long Name"; } }
Буманың ұзақ атауы келесі бетте орнатылатын буманы таңдағаннан кейін пайда болады.
Сонымен қатар бумада келесі функция мен айнымалылар қолжетімді:
Аты Түрі Сипаттама CreateProgressItem(String) Function Пайдаланушы интерфейсінде (UI) жаңа орындалу барысы элементін жасау үшін пайдаланылады. RaiseUpdateEvent(String, ProgressPanelItemStatus) Function CreateProgressItem(String) шақыру арқылы жасалған орындалу барысын жаңарту үшін пайдаланылады.
ProgressPanelItemStatus — келесі мәндері бар бағалау болып табылады:
Орындалуда = 0
Аяқталған = 1
Сәтсіз аяқталған = 2
Ескерту = 3
Белгісіз = 4RaiseFailEvent(String, Exception) Function Ағымдағы күйді импорттауды ерекше хабарлама арқылы сәтсіз аяқтау үшін пайдаланылады. IsRoleAssoicatedWithTeam(Guid, Guid) Function Рөлдің белгілі бір топпен байланыстырылғанын анықтау үшін пайдаланылады. IsWorkflowActive(Guid) Function Көрсетілген жұмыс ағынының белсенді немесе белсенді еместігін анықтау үшін пайдаланылады. PackageLog Сынып көрсеткіші Буманың бастапқы тіркеу интерфейсіне арналған көрсеткіші. Бұл интерфейс бума арқылы бума журналы файлына хабарламалар мен ерекше жағдайларды тіркеу үшін пайдаланылады. RootControlDispatcher Сипат Буманы орналастыру барысында басқару элементіне оның өзіндік UI интерфейсін көрсетуге мүмкіндік беру үшін пайдаланылатын диспетчер интерфейсі. Бұл интерфейсті кез келген UI элементтерін немесе пәрмендерін орау үшін пайдаланыңыз. Бұл айнымалыны мәнге орнатылмағандықтан пайдаланбас бұрын нөл мәндері үшін тексерген маңызды. CrmSvc Сипат Бумаға Dynamics 365 жүйесіне бума ішінен кіруге мүмкіндік беретін CrmServiceClient сыныбы көрсеткіші. Бұл көрсеткішті SDK әдістерін және алдын ала анықталған әдістердегі басқа әрекеттерді орындау үшін пайдаланыңыз. DataImportBypass Сипат Dynamics 365 Package Deployer жүйесінің Dataverse деректер үлгісін, тегіс файл деректерін, сондай-ақ Configuration Migration Tool құралынан экспортталатын деректер секілді барлық деректерді импорттау әрекеттерін өткізіп жіберетінін көрсетіңіз. Шын немесе жалған күйін көрсетіңіз. Әдепкі – false
.OverrideDataImportSafetyChecks Сипат Dynamics 365 Package Deployer импорт көрсеткіштерін жақсартуға көмектесетін қауіпсіздік тексерістерінің біразын айналып өтетінін көрсетіңіз. true
немесеfalse
көрсетіңіз. Әдепкі –false
.
Бұл сипаттыtrue
мақсатты Dataverse нұсқада ешқандай деректер болмаған жағдайда ғана орнату керек.Жобаны сақтау. Келесі қадам — буманы құрастыру.
Құрастыру және орналастыру
Келесі бөлімдерде пакетті құру және өрістету әдісі сипатталған.
Құрастыру
Буманы құру қай құралды пайдаланып жатқаныңызға байланысты төменде сипатталған.
CLI-мен жасалған пакетті құру үшін .csproj файлын Visual Studio жүктеуге болар еді, бірақ оның орнына dotnet пәрмені мен MSBuild-ті пайдаланамыз. Төмендегі мысал жұмыс каталогында *.csproj файлы бар деп болжайды.
> dotnet publish
DeploymentPackage -> C:\Users\peter\Downloads\DeploymentPackage\bin\Debug\DeploymentPackage.1.0.0.pdpkg.zip
Құрастырылған бума туралы мәліметтерді көруіңізге болады.
> pac package show --package .\bin\Debug\DeploymentPackage.1.0.0.pdpkg.zip
Сіздің бумаңыз <Project>\Bin\Debug қалтасындаға келесі файлдардан жасалады.
- <PackageName> қалтасы: Қалта атауы осы бөлімнің 2.g қадамындағы бума қалтасының атауы үшін өзгерткенмен бірдей. Бұл қалта бумаға арналған барлық шешімдер, конфигурация деректері, тегіс файлдар, сондай-ақ мазмұндардан тұрады.
Ескертпе
pdpublish қалтасын қамтитын .NET қалтасын (мысалы, net472) көруіңіз мүмкін. DLL және басқа жоба файлдары сол pdpublish қалтасында болады.
- <PackageName>.dll: Жиын буманың реттелетін кодын қамтиды. Әдепкі бойынша жиын атауы жоба атауымен бірдей болады.
Қолдану
Буманы жасағаннан кейін, оны Package Deployer құралы, Windows PowerShell немесе CLI пәрменінің көмегімен Dataverse данасында орналастыруға болады.
Package Deployer құралының көмегімен рналастыру үшін алдымен Dataverse әзірлеу құралдары бөлімінде сипатталғандай құралды жүктеп алыңыз. Әрі қарай, Windows PowerShell арқылы бумаларды орналастыру мақаласында Package Deployer бумаларды орналастыру туралы егжей-тегжейлі ақпаратты орындаңыз.
CLI көмегімен орналастыру үшін
pac package deploy
пәрменін пайдаланыңыз.> pac package deploy --package .\bin\Debug\DeploymentPackage.1.0.0.pdpkg.zip
Ескертпе
Буманы CLI көмегімен мақсатты ортаға орналастыру үшін алдымен аутентификация профилін реттеп, ұйымды таңдау қажет. Қосымша ақпарат: pac auth create, pac org select
Үздік тәжірибелер
Төменде Package Deployer бумалармен жұмыс істеу кезінде ұстануға болатын бірнеше практикалық кеңестер берілген.
Бумаларды жасау
Бумаларды жасау кезінде әзірлеушілер:
- Бума жиындарына қол қойылғанына көз жеткізуі керек.
Бумаларды орналастыру
Бумаларды орналастыру кезінде Dataverse әкімшілері:
- Сізге жиын көзіне бақылауға мүмкіндік беру үшін қол қойылған бума жиындарын пайдалануға тырысуы керек
- өндіріс данасы іске қосылмас бұрын, пакетті алдын ала шығару нұсқасында тексеріңіз, өндіріс данасы айналы суреті болғаны дұрыс.
- Буманы орналастырмас бұрын, өндіріс данасының көшірмесін жасаңыз.
Сондай-ақ келесіні қараңыз
Кері байланыс
https://aka.ms/ContentUserFeedback.
Жақында қолжетімді болады: 2024 жыл бойы біз GitHub Issues жүйесін мазмұнға арналған кері байланыс механизмі ретінде біртіндеп қолданыстан шығарамыз және оны жаңа кері байланыс жүйесімен ауыстырамыз. Қосымша ақпаратты мұнда қараңыз:Жіберу және пікірді көру