Del via


API for generalisert utslippsberegning

DU kan bruke API-en for msdyn_runEmissionCalculationService til å beregne utslipp for aktiviteter ved hjelp av en beregningsmodell uten å opprette en beregningsprofil. Som abonnent på Microsoft Sustainability Manager kan du bruke denne URL-adressen for å få tilgang til API-en:

{organization url}/api/data/v{version}/msdyn_runEmissionCalculationService

I denne URL-adressen refererer organisasjonens URL-adresse til den grunnleggende URL-adressen til organisasjonen Microsoft Sustainability Manager er installert på, og brukeren kan få tilgang. Versjon refererer til web-API-versjonen (for eksempel 9.2).

Hente enhets-IDer

Du kan hente IDene for enheter på mange måter, for eksempel aktivitetsdata og beregningsmodell. Disse inkluderer XRM WebAPI, klient-API-en og direkte via enhetens URL-adresse på Microsoft Sustainability Manager

Inndataparametere

Som en tilpasset Dataverse-API er kjøretiden for API-en for generalisert utslippsberegning begrenset til to minutter. Lengre beregninger blir tidsavbrutt, så størrelsen på inndataene begrenses i henhold til tabellen nedenfor.

Navn Type Obligatorisk? Bekrivelse
activityIds Strengmatrise Ja Liste over IDer for aktivitetsdataoppføringene som skal brukes i beregningen. Opptil 500 aktivitets-IDer kan inkluderes i inndataene.
calculationModelId Streng Ja ID for beregningsmodellen som skal brukes i utslippsberegning.
versjon Streng Nei Versjonsnummeret for API-en identifiserer versjonen av API-en som skal startes. For øyeblikket er 1.0.0 den eneste tilgjengelige versjonen. Bruk nyeste versjon hvis uspesifisert.

Utdataparametere

På det høyeste nivået er utdataene en JSON-streng som inneholder en liste over generaliserte utslippsutdataenheter. Utdataenheten for hver kvalifiserte aktivitet kan inneholde evaluerte utslipp eller feilene som ble oppdaget under beregningen, basert på om beregningen var vellykket. Kontroller alltid flagget IsErrorRecord for en utdatapost før du prøver å få tilgang til den.

Utdataenhet for generalisert utslipp

Den utdataenheten for generalisert utslipp finnes ikke i Dataverse. Det er en samling relevante attributter fra utslippsenheten og beregningsfeilenheten. API-en for generalisert utslippsberegning returnerer en liste over disse enhetene, og hver enhet tilsvarer en kvalifisert oppføring for aktivitetsdata i inndataene.

Utdataenheten har følgende attributter:

Navn Type Beskrivelse
ActivityId Streng ID-en for aktivitetsdataoppføringen brukes for beregningen.
ActivityName Streng Navnet på aktivitetsdataoppføringen brukes for beregningen.
IsErrorRecord Boolean En boolsk verdi som angir om beregningen for denne angitte aktiviteten fant feil. Hvis sann mislyktes beregningen, og feilene som ble oppdaget, vises via ErrorJson-attributtet.
ErrorJson Streng JSON-streng som representerer beregningsfeil som ble oppdaget under behandling av denne angitte aktiviteten. Denne verdien er null hvis IsErrorRecord er usann.
Navn Streng Navn på utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann.
CH4 Decimal CH4-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder CH4.
CH4Unit Streng Navn på enhet for CH4-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder CH4.
CO2 Decimal CO2-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder CO2.
CO2Unit Streng Navn på enhet for CO2-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder CO2.
CO2e Decimal CO2e-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder CO2e.
CO2eUnit Streng Navn på enhet for CO2e-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder CO2e.
HFK-er Decimal HFCs-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder HFCs.
HFCsUnit Streng Navn på enhet for HFCs-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder HFCs.
N2O Decimal N2O-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder N2O.
N2OUnit Streng Navn på enhet for N2O-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder N2O.
NF3 Decimal NF3-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder NF3.
NF3Unit Streng Navn på enhet for NF3-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder NF3.
PFC-er Decimal PFCs-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder PFCs.
PFCsUnit Streng Navn på enhet for PFCs-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder PFCs.
SF6 Decimal SF6-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder SF6.
SF6Unit Streng Navn på enhet for SF6-verdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder SF6.
OtherGHGs Decimal Annen drivhusgassverdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er 0 hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder annen GHGs.
OtherGHGsUnit Streng Navn på enhet for annen drivhusgassverdi for utslippet som er beregnet for denne aktiviteten. Denne verdien er null hvis IsErrorRecord er sann, eller hvis utslipp ikke inneholder annen GHGs.

Eksempler

I følgende eksempel aktiveres API-en med en gyldig aktivitetsdata-ID som gir et svar uten feil.

Inndata:

{

  "activityDataIds": [
    "decc7c96-9180-ed11-aacf-000d3a1477fd”
  ],

  "calculationModelId": "0b533a50-399e-ec11-b400-00224823f2de",

  "version": "1.0.0"

}

Utdata:

[
{
"ActivityId": "decc7c96-9180-ed11-aacf-000d3a1477fd",
"ActivityName": "Passenger car",
"IsErrorRecord": false,
"ErrorJson": null,
"Name": "Employee Commuting 526",
"CH4": 2267.832,
"CH4Unit": "g",
"CO2": 107560.032,
"CO2Unit": "kg",
"CO2e": 108292.541736,
"CO2eUnit": kg,
"HFCs": 0,
"HFCsUnit": null,
"N2O": 2267.832,
"N2OUnit": "g",
"NF3": 0,
"NF3Unit": null,
"PFCs": 0,
"PFCsUnit": null,
"SF6": 0,
"SF6Unit": null,
"OtherGHGs": 0,
"OtherGHGsUnit": null
}
]

I følgende eksempel startes API med en ugyldig aktivitetsdata-ID som resulterer i et feilsvar. Den aktuelle aktivitetsoppføringen mangler kostnadsfeltet, som beregningsmodellen krever i inndataene. Dette fører til at utdataoppføringen har en feil-JSON som inneholder stabelen med beregningsunntak som ble funnet under evaluering av oppføringen. Tjenestefeilkoden for unntakene som ble funnet, kan hjelpe brukeren med å forstå hva som gikk galt. I dette tilfellet angir EmissionCalculationActionFieldValueNullBlankException at et påkrevd felt er tomt.

Inndata:

{

  "activityDataIds": [
       "22a8b098-4b8b-ed11-aad1-000d3a5bc56a"
  ],

  "calculationModelId": "0b533a50-399e-ec11-b400-00224823f2de",

  "version": "1.0.0"

}

Utdata:

[
{ 
    "ActivityId": "22a8b098-4b8b-ed11-aad1-000d3a5bc56a", 
    "ActivityName": null, 
    "IsErrorRecord": true, 
    "ErrorJson": { 
      "ServiceErrorCode": "ActivityCalculationModelExecutionException", 
      "UserMessageParameters": [ 
        "Invalid Fugitive Emissions" 
      ], 
      "InnerException": { 
        "ServiceErrorCode": "EmissionCalculationActionFieldValueNullBlankException", 
        "UserMessageParameters": [ 
          "Action 1" 
        ], 
        "InnerException": { 
          "ServiceErrorCode": null, 
          "UserMessageParameters": null, 
          "InnerException": { 
            "ServiceErrorCode": null, 
            "UserMessageParameters": null, 
            "InnerException": null 
          } 
        } 
      } 
    }, 
    "Name": null, 
    "CH4": 0, 
    "CH4Unit": null, 
    "CO2": 0, 
    "CO2Unit": null, 
    "CO2e": 0, 
    "CO2eUnit": null, 
    "HFCs": 0, 
    "HFCsUnit": null, 
    "N2O": 0, 
    "N2OUnit": null, 
    "NF3": 0, 
    "NF3Unit": null, 
    "PFCs": 0, 
    "PFCsUnit": null, 
    "SF6": 0, 
    "SF6Unit": null, 
    "OtherGHGs": 0, 
    "OtherGHGsUnit": null 
  }] 
]

Aktivere egendefinerte API-er

Hvis du vil ha mer informasjon, kan du gå til Opprett og bruk egendefinerte API-er.