Histórico da Página
| Informações | ||
|---|---|---|
| ||
Essa funcionalidade será expedida na versão Totvs 12.1.2603 e também será liberada via console nos patches 12.1.2507.6, 12.1.2503.12 e 12.1.2411.17. |
CONTEÚDO
- Visão Geral
- API x Pontos UPC Relacionados
- JSON de metadata
- Especificidades de customização
- Tela - Listagem Parâmetros Estabelecimento x GNRE
- Tela - Novo/Editar Parâmetros Estabelecimento x GNRE
- Observações Gerais
01. Visão Geral Âncora 1 1
| 1 | |
| 1 |
...
| Manipulação de Objetos da Interface (Metadata) | |||
|---|---|---|---|
| Endpoint | Evento | Entrada | Observação |
| getMetaData | list | Metadados | Estrutura metadados da listagem. |
| getMetaData | new | Metadados | Estrutura metadados da tela de inclusão. |
| getMetaData | edit | Metadados | Estrutura metadados da tela de edição. |
| getMetaData | detail | Metadados | Estrutura metadados da tela de detalhes. |
| getMetaData | copy | Metadados | Estrutura metadados da tela de cópia/duplicação de registro. |
| Manipulação de Dados | |||
|---|---|---|---|
| Endpoint | Evento | Entrada | Observação |
| findById | findById | Dados do registro | Executado depois de buscar um registro específico. |
| findAll | findAll | Dados dos registros | Executado depois de buscar os registros. |
| create | beforeCreate | Payload | Executado antes de criar um registro. |
| create | afterCreate | Payload | Executado depois da criação de um registro. |
| update | beforeUpdate | Payload | Executado antes da alteração de um registro. |
| update | afterUpdate | Payload | Executado depois da alteração de um registro. |
| delete | beforeDelete | Payload | Executado antes da eliminação de um registro. |
| delete | afterDelete | Payload | Executado depois da eliminação de um registro. |
| deleteList | beforeDeleteList | Payload | Executado antes da eliminação de um lote de registros. |
| deleteList | afterDeleteList | Payload | Executado depois da eliminação de um lote de registros. |
API REST - cdp/api/v1/planilha.p
Pode ser implementada uma UPC para captar os eventos de geração de planilha.
Detalhes dos endpoints que permitem customização estão nessa documentação.
03. JSON de metadata Âncora 3 3
| 3 | |
| 3 |
É possível retornar o metadata das telas para fazer a analise da estrutura do JSON, executando as requests abaixo (depois de logado no produto Datasul):
| Tipo | Endpoint | Observações |
|---|---|---|
| Listagem | https://<servidor>:<porta>/api/cdp/v1/paramEventoTributos/metadata/?type=list | |
| Inclusão | https://<servidor>:<porta>/api/cdp/v1/paramEventoTributos/metadata/?type=new | |
| Edição | https://<servidor>:<porta>/api/cdp/v1/paramEventoTributos/metadata/<cod estabelec + '|' + cod evento + '|' + tipo-documento>?type=edit | Utiliza o código do estabelecimento, código do evento e tipo do documento (1-NF-e, 2-CT-e, 3-NFS-e) como path param. |
| Duplicar/Cópia | https://<servidor>:<porta>/api/cdp/v1/paramEventoTributos/metadata/<cod estabelec + '|' + cod evento + '|' + tipo-documento>?type=copy | Utiliza o código do estabelecimento, código do evento e tipo do documento (1-NF-e, 2-CT-e, 3-NFS-e) como path param. |
...
Lista das colunas da tabela. Deve vir um array de objetos que implementam a interface PoTableColumn.
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"columnsList":[{
"allowColumnsManager":true,
"property":"estab",
"label":"Estabelecimento",
"type":"string",
"key":true,
"order":1
},{
"allowColumnsManager":true,
"booleanTrue":"Sim",
"property":"integApb",
"booleanFalse":"Não",
"label":"Integra APB",
"type":"boolean",
"order":2
},{
"allowColumnsManager":true,
"booleanTrue":"Sim",
"property":"updateApbAuto",
"booleanFalse":"Não",
"label":"Atualiza APB Automático",
"type":"boolean",
"order":3
}] |
...
Elemento que se encontra dentro da expansão da linha da tabela, dados sobre o ICMS ST. Neste componente é utilizado o po-dynamic-view e todos as propriedades do PoDynamicViewField podem ser utilizadas.
| Informações |
|---|
Caso o icmsStView, icmsUfDestView e o fcpView não sejam enviados a expansão da linha não será exibida, caso apenas um ou dois desses elementos não sejam enviados a expansão ainda é criada, exibindo os elementos enviados. |
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"icmsSTView":[{
"gridColumns":6,
"property":"espICMSST",
"label":"Espécie",
"type":"string",
"order":1
},{
"gridColumns":6,
"property":"tpDespICMSST",
"label":"Tipo Despesa",
"type":"string",
"order":2
},{
"gridColumns":6,
"property":"ctICMSST",
"label":"Conta Contábil",
"type":"string",
"order":3
},{
"gridColumns":6,
"property":"ccICMSST",
"label":"Centro Custo",
"type":"string",
"order":4
}], |
...
Elemento que se encontra dentro da expansão da linha da tabela, dados sobre o ICMS Uf Dest. Neste componente é utilizado o po-dynamic-view e todos as propriedades do PoDynamicViewField podem ser utilizadas.
| Informações |
|---|
Caso o icmsStView, icmsUfDestView e o fcpView não sejam enviados a expansão da linha não será exibida, caso apenas um ou dois desses elementos não sejam enviados a expansão ainda é criada, exibindo os elementos enviados. |
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"icmsUfDestView":[{
"gridColumns":6,
"property":"espICMSUfDest"",
"label":"Espécie",
"type":"string",
"order":1
},{
"gridColumns":6,
"property":"tpDespICMSUfDest"",
"label":"Tipo Despesa",
"type":"string",
"order":2
},{
"gridColumns":6,
"property":"ctICMSUfDest"",
"label":"Conta Contábil",
"type":"string",
"order":3
},{
"gridColumns":6,
"property":"ccICMSUfDest""",
"label":"Centro Custo",
"type":"string",
"order":4
}], |
...
Expansão da linha da tabela, dados sobre o ICMS Uf Dest. Neste componente é utilizado o po-dynamic-view e todos as propriedades do PoDynamicViewField podem ser utilizadas.
| Informações |
|---|
Caso o icmsStView, icmsUfDestView e o fcpView não sejam enviados a expansão da linha não será exibida, caso apenas um ou dois desses elementos não sejam enviados a expansão ainda é criada, exibindo os elementos enviados. |
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"icmsUfDestView":[{
"gridColumns":6,
"property":"espICMSUfDest"",
"label":"Espécie",
"type":"string",
"order":1
},{
"gridColumns":6,
"property":"tpDespICMSUfDest"",
"label":"Tipo Despesa",
"type":"string",
"order":2
},{
"gridColumns":6,
"property":"ctICMSUfDest"",
"label":"Conta Contábil",
"type":"string",
"order":3
},{
"gridColumns":6,
"property":"ccICMSUfDest""",
"label":"Centro Custo",
"type":"string",
"order":4
}], |
...
A tela de novo/editar não foi desenvolvida utilizando o componente dinâmico completo, como o po-page-dynamic-edit por exemplo, e sim utilizando o po-page-default, po-lookup, po-dynamic-form, po-tabs e po-table, por conta disso alguns elementos da tela não podem ser customizados e algumas propriedades do metadata são utilizados de forma um pouco diferente, a seguir a descrição de cada customização possível.
a) Aba Geral
...
URL utilizada para buscar os dados da aba "Geral"
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"urlGnre":"\/api\/ftp\/v1\/gnreParameters" |
...
formulário dinâmico da aba geral, deve vir um array de objetos que implementam a interface PoDynamicFormField.
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
Obs: O exemplo aqui contem apenas 1 dos switches e 1 dos lookups como exemplo, pois o json completo para essa aba é longo.
"generalTab":[{
"gridColumns":6,
"booleanTrue":"Sim",
"property":"integApb",
"booleanFalse":"Não",
"optional":true,
"label":"Integrar com o Contas a pagar",
"type":"boolean",
"order":2
},{
"gridColumns":6,
"columns":[{
"visible":true,
"property":"code",
"width":"25%",
"label":"Código",
"type":"string"
},
{
"visible":true,
"property":"description",
"width":"50%",
"label":"Descrição",
"type":"string"
},
{
"property":"documentTypeDescription",
"width":"25%",
"label":"Tipo",
"type":"string"
}],
"format":[
"code",
"description"
],
"optional":true,
"label":"Espécie Padrão",
"params":{
"module":"apb",
"order":"module"
},
"fieldValue":"code",
"required":false,
"divider":"ICMS ST",
"searchService":"\/api\/fin\/v1\/documentType",
"fieldLabel":"description",
"property":"espICMSST",
"disabled":true,
"order":5
}] |
b) Aba Fornecedor x UF
...
| Visualização | https://<servidor>:<porta>/api/cdp/v1/paramEventoTributos/metadata/<cod estabelec + '|' + cod evento + '|' + tipo-documento>?type=detail | Utiliza o código do estabelecimento, código do evento e tipo do documento (1-NF-e, 2-CT-e, 3-NFS-e) como path param. |
04. Especificidades de CustomizaçãoÂncora 4 4
| 4 | |
| 4 |
Não há especificidades nessa tela, está sendo utilizado na listagem o componente dinâmico completo (po-page-dynamic-table). Na edição há um formulário dinâmico padrão recebendo os fields que podem ser alterados por meio de UPC.
...
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"urlGnreUf":"\/api\/ftp\/v1\/gnreParametersProviderUf" |
...
Lista das colunas da tabela de Fornecedor x UF, Deve vir um array de objetos que implementam a interface PoTableColumn.
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"fornecUfTabColumns":[{
"allowColumnsManager":true,
"property":"providerName",
"label":"Fornecedor",
"type":"string",
"order":17
},
{
"allowColumnsManager":true,
"property":"ufName",
"label":"Estado",
"type":"string",
"order":18
}] |
...
Campo utilizado para exibir ou não a ação de delete da tabela de UF x Fornecedor, caso não venha o DELETE nesta propriedade o botão não é criado.
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"tableCustomActions":[{
"label":"Delete"
}] |
...
Campos da modal de Relalação Forncedor x UF, a modal possui um po-dynamic-form e aceita todos as propriedades da interface PoDynamicFormField.
| Bloco de código | ||||||
|---|---|---|---|---|---|---|
| ||||||
"assocFornecUfModal":[{
"gridColumns":12,
"searchService":"\/api\/cdp\/v1\/customerPublic",
"columns":[{
...
}],
"fieldLabel":"customerName",
"property":"provider",
"format":[
"customerCode",
"customerName"
],
"label":"Fornecedor",
"params":{
"order":"customerCode"
},
"fieldValue":"customerCode",
"required":true,
"order":19
},
{
"gridColumns":12,
"optionsMulti":true,
"property":"uf",
"options":[{
"label":"AC - Acre",
"value":"AC"
},
{ ...
}],
"label":"Estado",
"type":"label",
"required":true,
"order":20
}] |
05. Observações Gerais Âncora 5 5
| 5 | |
| 5 |
- Todos os objetos que não foram citados, a principio, não podem ser customizados.
- Caso deseja-se customizar algum componente além dos descritos nesse documento e no documento padrão de customização do PO-UI, favor abrir um ticket solicitando e justificando a necessidade de customização.
- Clique aqui para baixar um fonte exemplo de UPC para esse programa.Documentação de customização




