Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
[Gai hau aurre-argitaratutako dokumentazioa da eta aldaketak jasan ditzake.]
Artikulu honetan Microsoft Dataverse-n kode baxuko pluginekin lan egitean aholkuak eta arazo ezagunak azaltzen dira.
Garrantzitsua da
- Berehalako kode baxuko pluginak lehentasunik gabe daude eta ez dira ezaugarri gisa entregatzen. Kode baxuko berehalako pluginak funtzioekin ordezkatzen dira. Informazio gehiago: Microsoft Dataverse-ko funtzioak (aurrebista)
- Hau aurreikuspen-eginbidea da.
- Aurrebista-eginbideak ez daude ekoizpenerako diseinatuta, eta funtzionalitate murriztua izan dezakete. Eginbide horiek kaleratze ofiziala baino lehen dauden erabilgarri, bezeroek atzitu eta beren oharrak eman ditzaten.
Kudeatu exekuzio-denboraren arazo orokorrak
Exekuzio-denborako pluginaren arazoak izanez gero, editatu berriro kode baxuko plugina. Ondoren, zure formula adierazpenaren Intellisense arazoak kode baxuko plug-in editorean bistaratzen dira. Jarraitu bistaratzen diren arazoa konpontzeko jarraibideak, eta, ondoren, berriro gorde plug-in-a.
Kontuz ibili eragiketa osteko adabakiak erabiltzerakoan
Kode baxuko pluginaren exekuzioak errore hau izan dezake eragiketa osteko batean erabiltzean Patch : Execution failed for PowerPlexPlugin: System.ServiceModel.FaultException 1[Microsoft.Xrm.Sdk.OrganizationServiceFault] This low-code plugin's execution was cancelled because the plugin logic caused an infinite loop. Correct the plugin logic and try again.
Eragiketa osteko agertoki batean erabiltzea Patch kontu handiz egin behar da, begizta infinituak saihesteko. Eragiketa batek Patch transakzio berri bat abiarazten du. Adibidez, eguneratze abiarazle batek deialdiak MyTable egiten baditu Patch(MyTable, ThisRecord, ...), eragiketa honek eguneratze ziklo errekurtsiboa eragin dezake.
Hona hemen arazo hau saihestu dezaketen eragiketen adibide batzuk:
Patch(CurrentTable, SomeOtherRecord, ... ) // For example, updating a manager's contact from a contact record.Patch(OtherTable, SomeOtherRecord, ... ) // Operations on a completely different table.
Kudeatu bi minutuko denbora-muga
Bi minutu edo gehiago irauten duten eragiketetan, errore hau jaso dezakezu:
Execution failed for PowerPlexPlugin: System.ServiceModel.FaultException1[Microsoft.Xrm.Sdk.OrganizationServiceFault]: Operation not allowed as plugin execution exceeded maximum allowed time (Fault Detail is equal to Exception details: limit your callbacks .. Create, Update)
Dataverse kode baxuko pluginekin lan egitean, garrantzitsua da bi minutuko denbora-muga modu eraginkorrean kudeatzea:
- Mugatu zure plugin kopurua
PatchetaCollecteragiketak, batez ere taula horretan beste plugin batzuk erregistratuta badituzu, eta horrek eragina izan dezake zure pluginen errendimenduan. - Monitorizatu errendimendua. Begiratu zure pluginen errendimendua eta kontuan hartu Dataverse-ren jarraipen eta erregistro gaitasunak erabiltzea exekuzio denborak eta hutsegiteak jarraitzeko. Jarraibide hauek jarraituz, ziurtatu dezakezu kode baxuko pluginak ondo funtzionatzen dutela Dataverse ingurunean, bi minutuko denbora-mugak eragindako etenik gabe. Informazio gehiago: Trazabilitatea eta erregistroa
Huts egin du APIMetik jasotako erantzunak
Errore-mezu hau jasotzen baduzu, API kudeaketatik (APIM) itzul daitekeena, editatu plugina eta gorde berriro. Gordetzeak APIM autentifikazioa hasieratzen du eta plugina arrakastaz exekutatzen hasten da.
Execution failed for PowerPlexPlugin: Failed response received from APIM; StatusCode: NotFound; ResponseContent: { "statusCode": 404, "message": "Resource not found" } Method: POST; RequestUri: https://canada-001.azure-apim.net/invoke; StatusCode: NotFound; ResponseContent: { "statusCode": 404, "message": "Resource not found" }; HeadersString: Headers - 'Access-Control-Allow-Methods': 'System.String[]'; 'Access-Control-Allow-Origin': 'System.String[]'; 'Access-Control-Max-Age': 'System.String[]'; 'Access-Control-Expose-Headers': 'System.String[]'; 'Date': 'System.String[]'; Access to APIM expires..edit and save the plugin