Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Identificación de plantilla: convertobjecttoarray
Convierte un objeto JSON en el cuerpo de solicitud o respuesta en una matriz. Esta plantilla está disponible en Power Apps y Power Automate.
Para comenzar, especifique la ruta al objeto o la colección principal y la ruta secundaria de la propiedad dentro de la principal donde se encuentra la matriz. A continuación, especifique un nombre de propiedad para la clave de cada objeto secundario y un nuevo nombre de propiedad para las propiedades dentro de cada objeto secundario. Finalmente, especifique la ruta donde se escribirá la nueva propiedad del objeto.
Algunas cosas a tener en cuenta:
- Puede dejar la subruta vacía si el primario es la matriz que desea transformar.
- Para sobrescribir la matriz existente, la ruta sería la ruta principal y la ruta secundaria de propiedad especificadas previamente.
- Para mantener la clave de objeto especificada como una propiedad dentro del nuevo objeto, establezca la opción "Retener clave" en "verdadero" (que es el valor predeterminado si se deja vacío). De lo contrario, establezca la opción en "falso".
Ejemplos
Veamos algunos ejemplos que utilizan los siguientes parámetros.
Ejemplo #1
Entrada JSON:
{
"peopleObject":{
"XYZ":{
"Age": "30"
},
"ABC":{
"Age": "23"
}
}
}
| Parámetro de entrada | Valor |
| propertyParentPath | @body() |
| propertySubPath | peopleObject |
| newPropertyPath | @body().peopleArray |
| nombre de clave | Nombre |
| nombre de valor | Detalles |
Salida JSON:
{
"peopleObject":{
"XYZ":{
"Age": "30"
},
"ABC":{
"Age": "23"
}
},
"peopleArray":[
{
"Name": "XYZ",
"Details":{
"Age": "30"
}
},
{
"Name": "ABC",
"Details":{
"Age": "23"
}
},
]
}
Ejemplo #2
Entrada JSON
{
"sets":[
{
"people":{
"XYZ":{
"Age": "30"
},
"ABC":{
"Age": "23"
}
}
},
{
"people":{
"PQR":{
"Age": "32"
},
"MNO":{
"Age": "26"
}
}
},
]
}
| Parámetro de entrada | Valor |
| propertyParentPath | @body().sets |
| propertySubPath | people |
| newPropertyPath | @item().people |
| nombre de clave | Nombre |
| nombre de valor | Detalles |
Salida JSON:
{
"sets":[
{
"people":[
{
"Name": "XYZ",
"Details":{
"Age": "30"
}
},
{
"Name": "ABC",
"Details":{
"Age": "23"
}
},
]
},
{
"people":[
{
"Name": "PQR",
"Details":{
"Age": "32"
}
},
{
"Name": "MNO",
"Details":{
"Age": "26"
}
},
]
}
]
}
Tenga en cuenta que, dado que el padre sets es una colección, la transformación se aplica a cada subPath people.
Ejemplo de conectores de código abierto
Tenemos una instancia de esta plantilla que se utiliza en nuestro repositorio de conectores de código abierto .
| Conector | Escenario |
| Planificador | Transforme un objeto de referencias en una matriz de referencias en la respuesta para la acción Obtener detalles de tarea. |
Parámetros de entrada
| Nombre | Llave | Necesario | Tipo | Descripción |
|---|---|---|---|---|
Target object or collection path |
x-ms-apimTemplateParameter.propertyParentPath | True | String | Ruta al objeto o colección. |
Property subpath |
x-ms-apimTemplateParameter.propertySubPath | String | Subruta de propiedad dentro del objeto o colección. | |
Path of the new property |
x-ms-apimTemplateParameter.newPropertyPath | True | String | Ruta de la nueva propiedad. |
Property name for the key |
x-ms-apimTemplateParameter.keyName | String | Nombre de propiedad de la clave. | |
Property name for the value |
x-ms-apimTemplateParameter.valueName | String | Nombre de propiedad del valor. | |
Run policy on |
x-ms-apimTemplate-policySection | True | Enum | Especifica cuándo ejecutar esta directiva - Solicitud: la plantilla de directiva se ejecutará antes de enviar la solicitud a la API de back-end. - Respuesta: la directiva se ejecutará después de recibir la respuesta de la API de back-end. |
Operations |
x-ms-apimTemplate-operationName | Matriz | Lista de acciones y desencadenadores a los que se aplicará la directiva. Si no se selecciona ninguna operación, esta directiva se aplicará a todas las operaciones. |