Hello, I have stored different values of a grid in my local variable local!DatosLineas (read-only fields which result on querying another record + extra column which must be completed by the user).
I want to "write" some of the fields of my local variable in another record fields. For example, the id_pedido of my local variable (which has been created by querying another record, "CPF_Lineas_Pedido") would be the id_Pedido in my other record ("CPF_Lineas_Recepciones")
In this case, I don´t know how to match the fields and write my new record with the data of my local variable. I have to point that the INFO SHOWN IN THE VALUE OF EACH FIELD CORRESPONDS TO THE PREVIOUS RECORD (CPF_Lineas_Pedido), but I want to save the values in a NEW RECORD (CPF_Lineas_Recepciones)
My code is below:
a!localVariables( /*mirar para incluir columna extra en variable local*/ local!DatosLineas: a!queryRecordType( recordType: 'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido', fields: { idLinea:'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{fcfa4b36-4398-4430-8055-ecfa59daf13a}idLineaPedido', idPedido: 'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{71427dbb-12db-4f83-bd99-f625bf9af271}idPedido', material: 'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{69e9a834-b2fb-4f35-a36d-3c526c97f4ac}Material', cantidad:'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{e78c5b35-026f-4713-8404-05077c6c9152}Cantidad', precioUnit:'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{47f4bf32-2e41-4c5a-a7e7-9fc7786bd753}PrecioUnit', importe:'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{beb59a89-a332-46d3-b718-a8285f58f942}Importe' }, filters: a!queryFilter( field: 'recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{71427dbb-12db-4f83-bd99-f625bf9af271}idPedido', operator: "=", value: ri!record['recordType!{3c95c0e4-e69d-43f6-b485-e72b24252af7}CPF Maestro Pedidos.fields.{7309402c-2312-4a4e-bdaa-5654789bffb2}idPedido'] ), pagingInfo: a!pagingInfo(startIndex: 1, batchSize: 100) ).data, local!GridRecepciones:{}, { a!sectionLayout( label: "Datos Recepción", labelIcon: "dolly", contents: { a!columnsLayout( columns: { a!columnLayout( contents: { a!textField( label: "Id Recepción", labelPosition: "ABOVE", value: ri!RecordRecepciones['recordType!{b6fc6108-1f5d-4cbe-9c5c-08da4b1d58f3}CPF Maestro Recepciones.fields.{cb86a21e-a5e5-4ec7-98dc-14e94cc5736c}idRecepcion'], saveInto: ri!RecordRecepciones['recordType!{b6fc6108-1f5d-4cbe-9c5c-08da4b1d58f3}CPF Maestro Recepciones.fields.{cb86a21e-a5e5-4ec7-98dc-14e94cc5736c}idRecepcion'], refreshAfter: "UNFOCUS", validations: {} ) } ), a!columnLayout( contents: { a!dateTimeField( label: "Fecha y hora de Recepción", labelPosition: "ABOVE", value: ri!RecordRecepciones['recordType!{b6fc6108-1f5d-4cbe-9c5c-08da4b1d58f3}CPF Maestro Recepciones.fields.{4fa92044-3c8b-438b-b77e-30bf88efbae3}FechaRecepcion'], saveInto: ri!RecordRecepciones['recordType!{b6fc6108-1f5d-4cbe-9c5c-08da4b1d58f3}CPF Maestro Recepciones.fields.{4fa92044-3c8b-438b-b77e-30bf88efbae3}FechaRecepcion'], validations: {} ) } ) } ) } ), a!sectionLayout( label: "Líneas Recepción", labelIcon: "list-alt-solid", contents: { a!gridLayout( label: "A continuación, introduzca las cantidades a recepcionar para cada línea de pedido y pulse el botón de Recepción", headerCells: { a!gridLayoutHeaderCell(label: "Linea Pedido"), a!gridLayoutHeaderCell(label: "Pedido"), a!gridLayoutHeaderCell(label: "Material"), a!gridLayoutHeaderCell(label: "Cantidad"), a!gridLayoutHeaderCell(label: "Precio Unitario"), a!gridLayoutHeaderCell(label: "Importe Total"), a!gridLayoutHeaderCell(label: "Cantidad Recepcionada"), a!gridLayoutHeaderCell() }, columnConfigs: { a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "DISTRIBUTE"), a!gridLayoutColumnConfig(width: "ICON") }, rows: a!forEach( items: local!DatosLineas, expression: a!gridRowLayout( contents: { a!textField(value: fv!index, readOnly: true), a!textField( value: fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{71427dbb-12db-4f83-bd99-f625bf9af271}idPedido'], saveInto: {}, readOnly: true ), a!textField( value: fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{69e9a834-b2fb-4f35-a36d-3c526c97f4ac}Material'], saveInto: {}, readOnly: true ), a!integerField( value: fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{e78c5b35-026f-4713-8404-05077c6c9152}Cantidad'], saveInto: {}, required: true, readOnly: true, validations: {} ), a!floatingPointField( value: fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{47f4bf32-2e41-4c5a-a7e7-9fc7786bd753}PrecioUnit'], saveInto: {}, required: true, readOnly: true, validations: {} ), a!floatingPointField( value: fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{beb59a89-a332-46d3-b718-a8285f58f942}Importe'], saveInto: {}, required: true, readOnly: true, validations: {}, align: "RIGHT" ), a!integerField( value: fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{bd0fe4ca-322c-422e-89e5-97e5194817a1}CantRecepAcum'], saveInto: { fv!item['recordType!{20fd7d81-a6d6-4fee-9219-afab0a7df2e4}CPF Lineas Recepciones.fields.{5b2d9770-999d-481c-927b-a2d7fc000098}CantidadRecep'], a!save(ri!recordLineasRecep['recordType!{20fd7d81-a6d6-4fee-9219-afab0a7df2e4}CPF Lineas Recepciones.fields.{5b2d9770-999d-481c-927b-a2d7fc000098}CantidadRecep'], fv!item['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{bd0fe4ca-322c-422e-89e5-97e5194817a1}CantRecepAcum']) } ), a!richTextDisplayField( value: { a!richTextIcon( icon: "times-circle", link: a!dynamicLink( value: remove(local!DatosLineas, fv!index), saveInto: local!DatosLineas ), linkstyle: "STANDALONE", color: "NEGATIVE" ) } ) } ) ) ) } ), a!buttonLayout( primaryButtons: { a!buttonWidget( label: "Completar Recepción", saveInto: { a!save( /*cambiar por recordLineasRecepciones*/ ri!recordLineasRecep, local!DatosLineas ), a!save(ri!recordLineasRecep['recordType!{20fd7d81-a6d6-4fee-9219-afab0a7df2e4}CPF Lineas Recepciones.fields.{5b2d9770-999d-481c-927b-a2d7fc000098}CantidadRecep'], ri!recordLineasPedido['recordType!{495578a9-1b23-4253-8145-6418faabe727}CPF Lineas Pedido.fields.{bd0fe4ca-322c-422e-89e5-97e5194817a1}CantRecepAcum']) }, submit: true, style: "PRIMARY", validate: true ) }, secondaryButtons: { a!buttonWidget( label: "Cancelar", value: true, saveInto: ri!cancel2, submit: true, style: "NORMAL", validate: false ) } ) } )
Thanks a lot!
Discussion posts and replies are publicly visible
Here you just need to iterate through the local variable which stores the data from the record "CPF_Lineas_Pedido" and then after matching some fields, update the rule input of type ("CPF_Lineas_Recepciones").
You can simply achieve this by running a forEach in the saveInto of the primary button.