如何从JSON输出中获取某些属性?

rvpgvaaj  于 2023-08-08  发布在  其他
关注(0)|答案(1)|浏览(125)

我是JSON的新手,我每天都在使用Power Automate查询ArcGIS数据库,查找过去24小时内的野火。一切正常,但我不确定如何从ParseJSON操作中获取某些属性。我的JSON输出看起来像这样:

“attributes”:{“OBJECTID”:324948,“SourceOID”:28045274,“ABCDMisc”:null,“ADSPermissionState”:“DEFAULT”,“ContainmentDateTime”:null,“ControlDateTime”:null,“CreatedBySystem”:“fireresponse”,“IncidentSize”:282,“DiscoveryAcres”:282,“DispatchCenterID”:“TXTIC”,“EstimatedCostToDate”:null,“FinalAcres”:null,“FinalFireReportApprovedByTitle”:null,“FinalFireReportApprovedByUnit”:null,“FinalFireReportApprovedDate”:null,“FireBehaviorGeneral”:null,“FireBehaviorGeneral1”:null,“FireBehaviorGeneral2”:null,“FireBehaviorGeneral3”:null,“FireCause”:“未确定”、“FireCauseGeneral”:null,“FireCauseSpecific”:null,“FireCode”:null,“FireDepartmentID”:null,“FireDiscoveryDateTime”:1690409269000,“FireMgmtComplexity”:“Type 5 Incident”,“FireOutDateTime”:null,“FireStrategyConfinePercent”:null,“FireStrategyFullSuppPercent”:null,“FireStrategyMonitorPercent”:null,“FireStrategyPointZonePercent”:null,“FSJobCode”:null,“FSOverrideCode”:null,“GACC”:“SACC”,“ICS209ReportDateTime”:null,“ICS209ReportForTimePeriodFrom”:null,“ICS209ReportForTimePeriodTo”:null,“ICS209ReportStatus”:null,“IncidentManagementOrganization”:null,“IncidentName”:“Live橡树溪”,“IncidentShortDescription”:null,“IncidentTypeCategory”:“WF”,“IncidentTypeKind”:“FI”,“InitialLatitude”:28.78373,“InitialLongitude”:-98.76591,“InitialResponseAcres”:null,“InitialResponseDateTime”:null,“IrwinID”:“{A655CB29-B0DA-4C69-A5C5-C99C7ED05C8D}",“IsFireCauseInvestigated”:null,“IsFireCodeRequested”:0,“IsFSAsisted”:null,“IsMultiJurisdictional”:null,“IsReimbursable”:null,“IsTrespass”:null,“IsUnifiedCommand”:0,“LocalIncidentIdentifier”:“232655”,“ModifiedBySystem”:“fireresponse”,“PercentContained”:80,“PercentPerimeterToBeContained”:null,“POOCity”:null,“POOCounty”:“Frio”,“POODispatchCenterID”:“TXTIC”、“POOFips”:“48163”,“POOJurisdictionalAgency”:“State”,“POOJurisdictionalUnit”:“TXTXS”,“POOJurisdictionalUnitParentUnit”:null,“POOLandownerCategory”:“Private”,“POOLandownerKind”:“Private”,“POOLegalDescPrincipalMeridian”:null,“POOLegalDescQtr”:null,“POOLegalDescQtrQtr”:null,“POOLegalDescRange”:null,“POOLegalDescSection”:null,“POOLegalDescTownship”:null,“POOPredictiveServiceAreaID”:“SA14”,“POOProtectingAgency”:“SFS”,“POOProtectingUnit”:“TXTXXS”,“POOState”:“US-TX”,“PredominantFuelGroup”:null,“PredominantFuelModel”:null,“PrimaryFuelModel”:null,“SecondaryFuelModel”:null,“TotalIncidentPersonnel”:null,“UniqueFireIdentifier”:“2023-TXTXTXS-232655”,“WFDSSDecisionStatus”:“无决策”、“估计最终成本”:null,“OrganizationalAssessment”:null,“StrategicDecisionPublishDate”:null,“CreatedOnDateTime_dt”:1690415597423,“ModifiedOnDateTime_dt”:1690487632383,“IsCpxChild”:0,“CpxName”:null,“CpxID”:null,“SourceGlobalID”:“{602A5D6E-21BD-4F89-AA60-DD9200C6F2E9}",“GlobalID”:“c41 dcdc 3 -8109- 4f 24-a66 d-da 9a 497 eb 19e”},“几何形状”:{“x”:-98.823218,“y”:28.781057 }

我得到了每个野火的输出,所以在我的流程中有一个循环,为记录中的每个野火获取上述数据。对于State属性,我有以下代码来替换某些值:

if(equals(items('Apply_to_each_2')?['attributes']?['POOState'],' US-MI'),'Michigan','false ')

这将用Michigan替换US-MI的输出。在我的循环中,此输出将用于更新SharePoint列表。但我不知道如何获得我需要的其他属性。我需要以下值:

“FireCause”“ICS209ReportDateTime”“IncidentName”“InitialLatitude”“InitialLongitude”“POOCity”“POOCounty”“POOLandownerCategory”“POOLandownerKind”

我是否需要某种表达式来提取我想要的属性?如果是这样,那会是什么样子?
如果你能帮忙的话,我将不胜感激。请记住,我是新来的,需要你的答案是,嗯...变笨了...
我还没有试过任何代码或表达式,因为我不知道我应该做什么,或者它应该是什么样子。我找到了类似问题的答案,但它们超出了我的能力。

nfeuvbwi

nfeuvbwi1#

看起来这些属性在PowerAutomate中太“嵌套”了,以至于无法立即使用。我必须为每个需要填充的变量编写一个表达式。

items('Apply_to_each_2')?['attributes']?['FireCause']

字符串
问题解决啦!

相关问题