im executing a process that is returning this i dont understand why there is a comma before the result of the map which is returning errors in other nodes how can i fix this?
Discussion posts and replies are publicly visible
Can you share the expression code and/or configuration of the node that returns this?
To clarify, are you just asking about the part that has "modified ,{..."? The rest looks like typical CDT / dictionary data.
yes sir,this part in here:"modified ,{..." i dont get it that comma is making some problems for me
Ok, thanks for clarifying, now how about my first question? Without answers for that we have no way of guessing what might be going wrong.
ok ,so in this case i have a script task that take as input a map takes as a value this rule :=
rule!PI1G_calcInizializzaDocumentiBySharePointAsBuilt( importMonitoraggio: pv!importDaElaborare, validazione: pv!validazioneDocumenti )
here is the rule implementation:
a!localVariables( local!documentiValidi: if( a!isNullOrEmpty(ri!validazione), {}, index( ri!validazione, wherecontains(true, ri!validazione.esito), null ), ), local!documenti: if( a!isNullOrEmpty(local!documentiValidi), {}, index(local!documentiValidi, "documento", {}) ), a!forEach( items: local!documenti, expression: rule!PI1G_calcInizializzaDocumentiBySharePointAsBuiltSingolo( importMonitoraggio: ri!importMonitoraggio, idComune: ri!idComune, documento: fv!item ) ) )
also here is the implemtnation of rule inside :PI1G_calcInizializzaDocumentiBySharePointAsBuiltSingolo:
a!localVariables( local!comune: rule!PI1G_getSComuneRcdByFilters( procom2021: ri!importMonitoraggio['recordType!{}PI1G Import Monitoraggio.fields.{}comuneProcom'], fields: { 'recordType!{}PI1G S Comune.fields.{}id', 'recordType!{}PI1G S Comune.fields.{}descrizione' } ), local!idComune: a!defaultValue( ri!idComune, index( local!comune, 'recordType!{}PI1G S Comune.fields.{}id', 0 ) ), local!progettoComune: rule!PI1G_getProgettiComuneRcdByFilters( idComune: local!idComune, fields: { 'recordType!{}PI1G Progetti Comune.fields.{}id' } ), local!naming: rule!PI1G_CalcDocumentiByNamingPc( idProgettoComune: index( local!progettoComune, 'recordType!{}PI1G Progetti Comune.fields.{}id', 0 ), docName: document(ri!documento, "name") ), local!tipologiaDoc: rule!PI1G_getStipologiaDocumentoV2RcdByFilters( namingConvention: local!naming, fields: { 'recordType!{}PI1G S Tipologia Documento V2.relationships.{}pi1gSMatchFaseTipDoc', 'recordType!{}PI1G S Tipologia Documento V2.fields.{}idCartella' } ), local!idTipologiaDocCaricato: if( a!isNullOrEmpty(local!tipologiaDoc), cons!PI1G_INT_ID_TIP_DOC_ALTRO_PC, index( local!tipologiaDoc, 'recordType!{}PI1G S Tipologia Documento V2.fields.{}id', 0 ) ), local!tipologiaDocCaricato: rule!PI1G_getStipologiaDocumentoV2RcdByFilters( id: local!idTipologiaDocCaricato, fields: { 'recordType!{}PI1G S Tipologia Documento V2.relationships.{}pi1gSCartellaDocumenti' } ), local!hasVerificaDoc: rule!PI1G_getEsitiVerificaDocRcdByFilters( idProgettoComune: index( local!progettoComune, 'recordType!{}PI1G Progetti Comune.fields.{}id', 0 ), fields: 'recordType!{}PI1G Esiti Verifica Documentale.fields.{}id' ), local!esitiVerificaDoc: rule!PI1G_getEsitiVerificaDocRcdByFilters( idProgettoComune: index( local!progettoComune, 'recordType!{}PI1G Progetti Comune.fields.{}id', 0 ), idsEsito: { cons!PI1G_INTS_ESITI_VERIFICA_DOCUMENTALE[3], cons!PI1G_INTS_ESITI_VERIFICA_DOCUMENTALE[2] }, fields: 'recordType!{}PI1G Esiti Verifica Documentale.fields.{}idVerificaDocumentale' ), local!matchVerificaDoc: rule!PI1G_getSMatchVerificaDocRcdByFilters( idsVerificaDoc: index( local!esitiVerificaDoc, 'recordType!{}PI1G Esiti Verifica Documentale.fields.{}idVerificaDocumentale', 0 ), fields: 'recordType!{}PI1G S Mach Verifica Documentale.fields.{}idSTipologiaDocumento' ), local!idsTipDaIntegrare: rule!INFRATEL_Distinct( index( local!matchVerificaDoc, 'recordType!{}PI1G S Mach Verifica Documentale.fields.{}idSTipologiaDocumento', 0 ) ), local!documento: rule!PI1G_getDocumentiRcdByFilters( attivo: true, idTipologiaDocumento: local!idTipologiaDocCaricato, idComune: local!idComune ), /*controlliamo se la tipologia è altro*/ local!map:if( local!idTipologiaDocCaricato = cons!PI1G_INT_ID_TIP_DOC_ALTRO_PC, a!map( documento: 'recordType!{}PI1G Documento'( 'recordType!{}PI1G Documento.fields.{}idComune': local!idComune, 'recordType!{}PI1G Documento.fields.{}idCartellaDocumenti': local!tipologiaDocCaricato['recordType!{}PI1G S Tipologia Documento V2.fields.{c7b22d1d-0b8a-4081-ae1c-1db0c33f87c5}idCartella'], 'recordType!{}PI1G Documento.fields.{}versione': 1, 'recordType!{}PI1G Documento.fields.{}caricatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}caricatoIl': now(), 'recordType!{}PI1G Documento.fields.{}aggiornatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}aggiornatoIl': now(), 'recordType!{}PI1G Documento.fields.{}attivo': true, 'recordType!{}PI1G Documento.fields.{}salvaInBozza': false, 'recordType!{}PI1G Documento.fields.{}idTipologiaDocumento': cons!PI1G_INT_ID_TIP_DOC_ALTRO_PC, 'recordType!{}PI1G Documento.relationships.{}TipologiaDocV2': local!tipologiaDocCaricato, 'recordType!{}PI1G Documento.relationships.{}pi1gSCartellaDocumenti': index( local!tipologiaDocCaricato, 'recordType!{}PI1G S Tipologia Documento V2.relationships.{}pi1gSCartellaDocumenti' ), 'recordType!{}PI1G Documento.fields.{}idAppian': document(ri!documento, "id"), 'recordType!{}PI1G Documento.fields.{}nomeFile': document(ri!documento, "name"), 'recordType!{}PI1G Documento.fields.{}estensione': document(ri!documento, "extension"), 'recordType!{}PI1G Documento.fields.{}descrizione': rule!PI1G_calcNomeDocumentoByTipologia( codiceIdentificativo: index( local!comune, 'recordType!{}PI1G S Comune.fields.{}descrizione', null ), tipologiaDoc2: local!tipologiaDocCaricato, comune: local!idComune ) ), storicoDoc: {} ), /*controlliamo se ha una verifica documentale*/ if( a!isNullOrEmpty(local!hasVerificaDoc), a!map( documento: 'recordType!{}PI1G Documento'( 'recordType!{}PI1G Documento.fields.{}idCartellaDocumenti': local!tipologiaDocCaricato['recordType!{}PI1G S Tipologia Documento V2.fields.{}idCartella'], 'recordType!{}PI1G Documento.fields.{}versione': 1, 'recordType!{}PI1G Documento.fields.{}caricatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}caricatoIl': now(), 'recordType!{}PI1G Documento.fields.{}aggiornatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}aggiornatoIl': now(), 'recordType!{}PI1G Documento.fields.{}attivo': true, 'recordType!{}PI1G Documento.fields.{}salvaInBozza': false, 'recordType!{}PI1G Documento.fields.{}idTipologiaDocumento': index(local!tipologiaDocCaricato,'recordType!{}PI1G S Tipologia Documento V2.fields.{4ef2f463-f6d8-41c1-8cbb-6ed13e260313}id',null), 'recordType!{}PI1G Documento.relationships.{}TipologiaDocV2': local!tipologiaDocCaricato, 'recordType!{}PI1G Documento.relationships.{}pi1gSCartellaDocumenti': index( local!tipologiaDocCaricato, 'recordType!{}PI1G S Tipologia Documento V2.relationships.{}pi1gSCartellaDocumenti' ), 'recordType!{}PI1G Documento.fields.{}idAppian': document(ri!documento, "id"), 'recordType!{}PI1G Documento.fields.{}nomeFile': document(ri!documento, "name"), 'recordType!{}PI1G Documento.fields.{}estensione': document(ri!documento, "extension"), 'recordType!{}PI1G Documento.fields.{}descrizione': rule!PI1G_calcNomeDocumentoByTipologia( codiceIdentificativo: index( local!comune, 'recordType!{}PI1G S Comune.fields.{}descrizione', null ), tipologiaDoc2: local!tipologiaDocCaricato, comune: local!idComune ) ), storicoDoc: {} ), if( contains( local!idsTipDaIntegrare, local!idTipologiaDocCaricato ), if( /*CONDIZIONE */ a!isNotNullOrEmpty(local!documento), /*RISULTATO SE LA CONDIZIONE è VALIDA */ a!map( documento: rule!INFRATEL_smartUpdate( data: local!documento, updates: 'recordType!{}PI1G Documento'( 'recordType!{}PI1G Documento.fields.{}idAppian': document(ri!documento, "id"), 'recordType!{}PI1G Documento.fields.{}nomeFile': document(ri!documento, "name"), 'recordType!{}PI1G Documento.fields.{}estensione': document(ri!documento, "extension"), 'recordType!{}PI1G Documento.fields.{}descrizione': rule!PI1G_calcNomeDocumentoByTipologia( codiceIdentificativo: index( local!comune, 'recordType!{}PI1G S Comune.fields.{}descrizione', null ), tipologiaDoc2: rule!PI1G_getStipologiaDocumentoV2RcdByFilters(id: local!idTipologiaDocCaricato), comune: local!idComune ), 'recordType!{}PI1G Documento.fields.{}versione': index( local!documento, 'recordType!{}PI1G Documento.fields.{}versione', 0 ) + 1, 'recordType!{}PI1G Documento.fields.{}aggiornatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}aggiornatoIl': now() ) ), storicoDoc: 'recordType!{}PI1G Storico Documento'( 'recordType!{}PI1G Storico Documento.fields.{}idDocumento': local!documento['recordType!{}PI1G Documento.fields.{}id'], 'recordType!{}PI1G Storico Documento.fields.{}idCartellaDocumenti': local!documento['recordType!{}PI1G Documento.fields.{}idCartellaDocumenti'], 'recordType!{}PI1G Storico Documento.fields.{}idAppian': local!documento['recordType!{}PI1G Documento.fields.{}idAppian'], 'recordType!{}PI1G Storico Documento.fields.{}idDocumentoEsterno': local!documento['recordType!{}PI1G Documento.fields.{}idDocumentoEsterno'], 'recordType!{}PI1G Storico Documento.fields.{}idComune': local!documento['recordType!{}PI1G Documento.fields.{}idComune'], 'recordType!{}PI1G Storico Documento.fields.{}nomeFile': local!documento['recordType!{}PI1G Documento.fields.{}nomeFile'], 'recordType!{}PI1G Storico Documento.fields.{}estensione': local!documento['recordType!{}PI1G Documento.fields.{}estensione'], 'recordType!{}PI1G Storico Documento.fields.{}descrizione': local!documento['recordType!{}PI1G Documento.fields.{}descrizione'], 'recordType!{}PI1G Storico Documento.fields.{}versione': local!documento['recordType!{}PI1G Documento.fields.{}versione'], 'recordType!{}PI1G Storico Documento.fields.{}caricatoIl': local!documento['recordType!{}PI1G Documento.fields.{}caricatoIl'], 'recordType!{}PI1G Storico Documento.fields.{a62a11d7-6ece-45f0-888c-ec6edcbe532b}caricatoDa': local!documento['recordType!{}PI1G Documento.fields.{}caricatoDa'], 'recordType!{}PI1G Storico Documento.fields.{}aggiornatoDa': local!documento['recordType!{}PI1G Documento.fields.{}aggiornatoDa'], 'recordType!{}PI1G Storico Documento.fields.{}aggiornatoIl': local!documento['recordType!{}PI1G Documento.fields.{}aggiornatoIl'], 'recordType!{}PI1G Storico Documento.fields.{}attivo': true, 'recordType!{}PI1G Storico Documento.fields.{}idTipologiaProcesso': cons!PI1G_INTS_ID_TIPOLOGIA_PROCESSI[1], 'recordType!{}PI1G Storico Documento.fields.{}salvaInBozza': local!documento['recordType!{}PI1G Documento.fields.{}salvaInBozza'], 'recordType!{}PI1G Storico Documento.fields.{}verificato': local!documento['recordType!{}PI1G Documento.fields.{}verificato'] ) ), /*RISULTATO SE LA CONDIZIONE NON è VALIDA */ a!map( documento: 'recordType!{}PI1G Documento'( 'recordType!{}PI1G Documento.fields.{}idComune': local!idComune, 'recordType!{}PI1G Documento.fields.{idCartellaDocumenti': local!tipologiaDocCaricato['recordType!{}PI1G S Tipologia Documento V2.fields.{c7b22d1d-0b8a-4081-ae1c-1db0c33f87c5}idCartella'], 'recordType!{}PI1G Documento.fields.{}versione': 1, 'recordType!{}PI1G Documento.fields.{}caricatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}caricatoIl': now(), 'recordType!{}PI1G Documento.fields.{}aggiornatoDa': cons!PI1G_TXT_USER_TR, 'recordType!{}PI1G Documento.fields.{}aggiornatoIl': now(), 'recordType!{}PI1G Documento.fields.{}attivo': true, 'recordType!{}PI1G Documento.fields.{}salvaInBozza': false, 'recordType!{}PI1G Documento.fields.{}idTipologiaDocumento': cons!PI1G_INT_ID_TIP_DOC_ALTRO_PC, 'recordType!{}PI1G Documento.relationships.{}TipologiaDocV2': local!tipologiaDocCaricato, 'recordType!{}PI1G Documento.relationships.{}pi1gSCartellaDocumenti': index( local!tipologiaDocCaricato, 'recordType!{}PI1G S Tipologia Documento V2.relationships.{}pi1gSCartellaDocumenti' ), 'recordType!{}PI1G Documento.fields.{}idAppian': document(ri!documento, "id"), 'recordType!{}PI1G Documento.fields.{}nomeFile': document(ri!documento, "name"), 'recordType!{}PI1G Documento.fields.{}estensione': document(ri!documento, "extension"), 'recordType!{}PI1G Documento.fields.{}descrizione': rule!PI1G_calcNomeDocumentoByTipologia( codiceIdentificativo: index( local!comune, 'recordType!{}PI1G S Comune.fields.{}descrizione', null ), tipologiaDoc2: local!tipologiaDocCaricato, comune: local!idComune ) ), storicoDoc: {} ) ), null ) ) ), local!map )
Mike Schmitt ,Konduru Chaitanya ,Stefan Helzle Abhishek Karumuru
please edit this comment and re-copy-and-paste your code into a Code Box, because like this it's pretty much unreadable, thanks to how indentation and formatting are stripped out by Community.
Note: I see you've moved it into Code Boxes, but if you re-copy it from the Appian source, you'll actually get indentation instead of the hard-to-read "flat text" like what we see currently after your first revision (which is still very hard to read):
Yes, the second piece of code can return a list including null values. I highly recommend to prevent that happening. Trying to solve the problem down the road will just create a bigger mess.