Histórico da Página
Documento Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | prgfin/fas/fas735zh |
Objetivo
Criar bens patrimoniais no módulo de Ativo Fixo do EMS 5.
...
DEF VAR v_hdl_program AS HANDLE NO-UNDO.
DEF VAR pv_cod_return AS CHAR.
DEF VAR pv_des_mensagem AS CHAR FORMAT "X(50)".
RUN prgfin\fas\fas735zh.py PERSISTENT SET v_hdl_program.
RUN pi_main_api_criacao_bem_pat_11 14 IN v_hdl_program
(INPUT 1,
INPUT v_cod_matriz_trad_org_ext,
INPUT v_cod_matriz_trad_ccusto_ext,
INPUT v_cod_matriz_trad_finalid_ext,
INPUT v_log_ctbz,
INPUT TABLE tt_criacao_bem_pat_item_api_2,
INPUT TABLE tt_criacao_bem_pat_val_resid_1,
INPUT TABLE tt_criacao_bem_pat_img_1,
INPUT TABLE tt_criacao_bem_pat_api_710,
OUTPUT v_cod_return,
OUTPUT v_des_mensagem).
...
Parâmetro | Descrição |
p_num_vers_integr_api | Será utilizado para determinar se o programa que está chamando está íntegro com as definições correntes da API. |
p_cod_matriz_trad_org_ext | Deve ser informada a matriz de tradução de unidade organizacional. |
p_cod_matriz_trad_ccusto_ext | Deve ser informada a matriz de tradução de centros de custo. |
p_cod_matriz_trad_finalid_ext | Deve ser informada a matriz de tradução de finalidade econômica. |
Pp_log_ctbz | Deve ser YES para que o movimento de implantação seja contabilizado. Deve ser NO para que o movimento de implantação NÃO seja contabilizado. |
tt_criacao_bem_pat_item_api_2 | Esta temp-table conterá os registros dos itens das notas fiscais vinculadas ao bem patrimonial. Deverá ser definida conforme os atributos mencionados a seguir, na seção Tabelas Temporárias. |
tt_criacao_bem_pat_val_resid_1 | Esta temp-table conterá os registros sobre os valores residuais do bem patrimonial. Deverá ser definida conforme os atributos mencionados a seguir, na seção Tabelas Temporárias. |
tt_criacao_bem_pat_img_1 | Esta temp-table conterá os registros sobre as imagens do bem patrimonial. Deverá ser definida conforme os atributos mencionados a seguir, na seção Tabelas Temporárias. |
tt_criacao_bem_pat_api_710 | Esta temp-table contém os registros dos bens patrimoniais que serão criados. |
pv_cod_return | Retorna string “OK” se não ocorreram erros. |
pv_des_mensagem | Caso tenha ocorrido erro, retorna a mensagem de erro que provocou erro na criação dos bens patrimoniais. Normalmente erros da matriz de tradução são apresentados nesta mensagem. Erros deste tipo inviabilizam a criação de todos os bens patrimoniais na temp-table. |
...
Quando ocorrer algum erro antes da criação dos bens patrimoniais este será retornado na variável pv_des_mensagem.
Observações: Quando a API for executado por um programa externo, logo após a chamada da API, deverá ser criado um tratamento para impressão dos erros. E para a correta visualização dos erros, todos os campos desta tabela devem ser impressos.
...
Tabela Temporária | Descrição | Entrada/Saída |
tt_criacao_bem_pat_api_710 | Conterá as informações dos bens patrimoniais a serem implantados. | Local |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
tta_cod_unid_organ_ext | character | x(3) | Código da unidade organizacional externa, ou seja, a empresa a ser traduzida pela matriz de tradução de unidade organizacional. | Sim | |
tta_cod_cta_pat | character | x(18) | Código da conta patrimonial. | Sim | |
tta_num_bem_pat | integer | >>>>>>>>9 | Número do bem patrimonial. Caso seja informado 0 (zero) será atribuído automaticamente o número do próximo bem patrimonial de acordo com parâmetros do ativo fixo. | Não | |
tta_num_seq_bem_pat | integer | >>>>9 | Número da sequência do bem patrimonial. (Idem observação acima). | Não | |
tta_des_bem_pat | character | x(40) | Descrição do bem patrimonial. | Sim | |
tta_dat_aquis_bem_pat | date | 99/99/9999 | Data de aquisição do bem patrimonial. | Sim | |
tta_cod_plano_ccusto | character | x(8) | Código do plano de centros de custo. | Sim | |
tta_cod_ccusto_ext | character | x(8) | Código do centro de custo externo a ser traduzido pela matriz de tradução de centros de custo. | Sim | |
tta_cod_estab_ext | character | x(8) | Código do estabelecimento externo a ser traduzido pela matriz de tradução de unidade organizacional. | Sim | |
tta_cod_unid_negoc_ext | character | x(8) | Código da unidade de negócio responsável pelo bem patrimonial. | Sim | |
tta_cod_finalid_econ_ext | character | x(8) | Código da finalidade externa / moeda do bem patrimonial a ser traduzida pela matriz de tradução de finalidade. | Sim | |
ttv_val_aquis_bem_pat | decimal | ->>,>>>,>>>,>>9.99 | Valor de aquisição do bem patrimonial. Importante: O valor do bem patrimonial pode ser positivo no caso de bens patrimoniais do Ativo imobilizado ou negativo se o bem patrimonial referir-se a item do patrimônio líquido. | Sim | |
ttv_log_erro | logical | Sim/Não | Indicador de erro no bem patrimonial. Deve ser criado como “Não” | Sim | |
tta_qtd_bem_pat_represen | decimal | >>>>>>>>9 | Quantidade de bens patrimoniais | Não | |
tta_cdn_fornecedor | Integer | >>>,>>>,>>9 | Código numérico do fornecedor do bem patrimonial | Não | |
tta_cod_docto_entr | character | x(8) | Número da nota fiscal | Não | |
tta_cod_ser_nota | character | x(3) | Série da Nota fiscal | Não | |
tta_num_item_docto_entr | Integer | >>>,>>9 | Número do item da nota fiscal | Não | |
tta_num_id_bem_pat | Integer | >>,>>>,>>9 | Este atributo retorna o número interno do bem patrimonial. Não precisa ter o seu valor informado. Serve apenas como uma referência para localizar o bem patrimonial criado na base de dados. Deve ser criado como 0 (zero) | Sim | |
tta_des_narrat_Bem_pat | character | x(2000) | Narrativa do bem patrimonial | Não | |
tta_log_bem_imptdo | logical | Sim/Não | Este atributo indica se o bem patrimonial foi importado ou não. | Sim | |
tta_log_cr_pis | logical | Sim/Não | Este atributo indica se o bem patrimonial credita ou não PIS. Importante: Este atributo será utilizado somente no Brasil | Sim | |
tta_log_cr_cofins | logical | Sim/Não | Este atributo indica se o bem patrimonial credita ou não COFINS. Importante: Este atributo será utilizado somente no Brasil. | Sim | |
tta_num_parc_pis_cofins | integer | 99 | Este atributo indica se o credito de PIS e COFINS é parcelado. Importante: Depende que o bem patrimonial credite PIS ou COFINS. O valor passado deverá ser 00 para não credita ou 12 ou 48 vezes. | Sim | |
tta_val_cr_pis | decimal | >>>,>>>,>>9.99 | Valor do PIS que a empresa poderá creditar. | Sim | |
tta_val_cr_cofins | decimal | >>>,>>>,>>9.99 | Valor do COFINS que a empresa poderá creditar. | Sim | |
ttv_log_cr_csll | logical | Sim/Não | Credita CSLL | Sim | X |
ttv_num_exerc_cr_csll | integer | 99 | Exerc. Exercício de Crédito CSLL | Sim | X |
tta_dat_calc_pat | date | 99/99/9999 | Data de início de cálculo do bem patrimonial. | Não | |
tta_cb3_ident_visual | char | x(20) | Número da plaqueta que identifique o bem patrimonial. Importante: Para todo bem patrimonial é atribuído um número de inventário, por uma das seguintes ordens: a) Chapas de inventário; b) Números pintados (no caso de veículos motorizados). | Não | |
tta_cod_estado_fisic_bem_pat | char | x(8) | Estado físico que o bem patrimonial apresenta no momento do registro da aquisição. | Não | |
tta_cod_espec_bem | char | x(6) | Espécie do bem patrimonial. | Não | |
tta_cod_marca | char | x(6) | Marca correspondente ao bem patrimonial. | Não | |
tta_cod_modelo | char | x(8) | Código do modelo do bem patrimonial. | Não | |
tta_dat_avaliac_apol_seguro | date | 99/99/9999 | Data de avaliação da apólice de seguro. | Não | |
tta_val_avaliac_apol_seguro | decimal | ->>,>>>,>>>,>>9.99 | Valor de avaliação da apólice de seguro. | Não | |
tta_cod_licenc_uso | char | x(8) | Código da licença de uso. | Não | |
tta_cod_especif_tec | char | x(8) | Código da especificação técnica, quando o bem patrimonial exigir uma característica especial já detalhada em uma especificação. | Não | |
tta_cod_arrendador | char | x(6) | Código do arrendador do bem patrimonial, quando o bem estiver associado a um Contrato de Leasing. | Não | |
tta_cod_contrat_leas | char | x(12) | Código do contrato de Leasing. | Não | |
tta_cod_localiz | char | x(12) | Código da localização física do bem patrimonial na empresa. | Não | |
tta_cod_imagem | char | x(30) | Imagem do bem patrimonial. Importante: A partir da versão 11, esse campo foi substituído pela temp-table tt_criacao_bem_pat_img_1 e será gravado em branco. | Não | |
ttv_recrow_id | recidrowid | >>>>>>9 | Recid ROWID do registro do bem patrimonial criado na temp-table. | Sim |
2) Tabela de erros
tta_cod_natur_operac | character | x(6) | Código da natureza de operação da nota fiscal. Importante: Esse campo foi incluído a partir da versão 12. | Não | |
ttv_val_exc_icms | decimal | ->>,>>>,>>>,>>9.99 | Valor de exclusão de ICMS da base de cálculo do PIS/COFINS | Não |
2) Tabela de erros
Tabela Temporária | Descrição | Entrada/Saída |
tt_erros_criacao_bem_ | ||
Tabela Temporária | Descrição | Entrada/Saída |
tt_erros_criacao_bem_pat_api_1 | Conterá as informações dos movimentos que não foram importados com a respectiva mensagem de erro. | New Shared |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
tta_cod_unid_organ_ext | character | x(3) | Código da unidade organizacional externa, ou seja, a empresa a ser traduzida pela matriz de tradução de unidade organizacional. | ||
tta_cod_cta_pat | character | x(18) | Código da conta patrimonial. | ||
tta_num_bem_pat | integer | >>>>>>>>9 | Código do bem patrimonial. | ||
tta_num_seq_bem_pat | integer | >>>>9 | Sequência do bem patrimonial. | ||
tta_des_bem_pat | character | x(40) | Descrição do bem patrimonial. | ||
tta_dat_aquis_bem_pat | date | 99/99/9999 | Data da aquisição do bem patrimonial. | ||
tta_cod_finalid_econ_ext | character | x(8) | Código da Finalidade Econômica Externa. | ||
ttv_des_mensagem | character | x(50) | Mensagem de erro para o bem patrimonial com a chave formada pelos atributos acima nesta temp table. |
...
Tabela Temporária | Descrição | Entrada/Saída |
tt_criacao_bem_pat_item_api_2 | Conterá os registros dos itens das notas fiscais que serão vinculados ao bem patrimonial. | Entrada |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução | |||
ttv_recrow_bem | recidrowid | RECID ROWID do registro da temp-table tt_criacao_bem_pat_api_5, referente ao bem patrimonial ao qual o item será vinculado. | Sim | |||||
tta_cdn_fornecedor | integer | >>>,>>>,>>9 | Código do fornecedor que represente um fornecedor a qual o movimento está associado. | Sim | ||||
tta_cod_docto_entr | character | x(8) | Código da ou número do documento/nota fiscal. | Sim | ||||
tta_cod_ser_nota | character | X(35) | Série da nota fiscal. | Não | ||||
tta_num_item_docto_entr | integer | >>>,>>9 | Número do item da nota fiscal. | Sim | ||||
tta_ | qtdcod_ | itemnatur_ | docto_entroperac | character | x(6) | Código da natureza de operação da nota fiscal. Importante: Esse campo foi incluído a partir da versão 12. | Não | |
tta_qtd_item_docto_entr | Decimal | >>>>>>>>9 | Decimal | >>>>>>>>9 | Quantidade do item vinculado ao bem patrimonial. | Sim |
4) Valores Residuais do bem patrimonial
Tabela Temporária | Descrição | Entrada/Saída |
tt_criacao_bem_pat_val_resid_1 | Conterá os registros dos valores residuais do bem patrimonial. | Entrada |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução |
ttv_recrow_bem | recidrowid | RECID ROWID do registro da temp-table tt_criacao_bem_pat_api_5, referente ao bem patrimonial ao qual o item será vinculado. | Sim | ||
tta_cod_tip_calc | character | x(7) | Código do tipo de cálculo do bem patrimonial. | Sim | |
tta_cod_cenar_ctbl | character | x(8) | Código do cenário contábil do bem patrimonial, conforme cadastro no UTB076AA/UFN0203AA/UTB304AA - Cenário Contábil. | Sim | |
tta_cod_finalid_econ | character | X(10) | Código da finalidade econômica do bem patrimonial. | Sim | |
tta_val_resid_min | decimal | >>>>,>>>,>>>,>>9.99 | Valor residual mínimo do bem patrimonial. Exemplo: Um determinado bem patrimonial, por exemplo, um microcomputador, já registrou toda a devida depreciação, não apresentando nenhum valor a depreciar. Para o objetivo de depreciação, esse bem não expressa mais valor, mas para a finalidade de venda, será vendido por um preço/valor. Este valor é o Residual Mínimo. | Sim |
...
Tabela Temporária | Descrição | Entrada/Saída |
tt_criacao_bem_pat_img_1 | Conterá os registros das imagens do bem patrimonial. | Entrada |
Atributo | Tipo | Formato | Descrição | Obrigatório | Evolução | ||||||
ttv_recrow_bem | recidrowid | RECID ROWID do registro da temp-table tt_criacao_bem_pat_api_5, referente ao bem patrimonial ao qual o item será vinculado. | Sim | ||||||||
tta_des_imagem | character | x(40) | Descrição ou um detalhe a especificar a respeito da imagem do bem patrimonial com até 40 caracteres alfanuméricos. | Sim | |||||||
tta_dat_img | date | 99/99/9999 | Data da imagem do bem patrimonial. | SimNão | |||||||
tta_log_princ | logical | Sim/Não | Indica que a imagem em questão é a principal relacionada ao bem patrimonial. Importante: É possível incluir 1 ou várias imagens associadas ao bem patrimonial, porém somente umas delas pode ser definida com a principal imagem - Campo Principal igual a Sim. | Sim | |||||||
tta_ | codnom_ | usuararq | character | x( | 12100) | Código do usuário responsável pela inclusãoNome do arquivo da imagem | do relacionada ao bem patrimonial. | Sim | |||
tta_ | nomdes_ | arqobs | character | x( | 100200) | Nome do arquivo da imagem relacionada ao bem patrimonial. | Sim | tta_des_observ | character | x(200) | Espaço disponível para anotações ou observações a respeito da imagem do bem patrimonial que está sendo implementada. |
...
Não |
Execução
Na execução da API ocorrem as seguintes validações:
- Versão de integração
- API verificará se o programa chamador está integro com a API. Isto ocorre através da verificação da versão de integração passada como parâmetro.
- Estabelecimento
- Será verificado se o estabelecimento é válido.
- Unidade de Negócio
- Será verificado se a unidade de negócio é válida e se está vinculada ao estabelecimento.
- Centro de Custo
- Valida o centro de custo informado e verifica se o usuário tem permissão para acessá-lo.
- Conta patrimonial
- Verifica se a conta patrimonial informada é válida.
- Finalidade Econômica
- Verifica se a finalidade econômica existe na matriz de tradução de finalidade informada.
- Fornecedor
- Verifica, caso informado, se o fornecedor é válido.
- Documento de entrada (nota fiscal)
- Verifica, caso informado, se o documento existem no sistema.
- Itens documento de entrada
- Verifica, caso informado, se os itens de documento de entrada existem no sistema.
- Verifica se a quantidade dos itens de documento de entrada está disponível para vinculação.
- Número e sequência do bem patrimonial
- Verifica, caso informado, se já não existe um bem patrimonial com o mesmo número no sistema. (levando em conta que a chave completa do bem patrimonial é empresa, conta patrimonial, número do bem patrimonial e sequência).
- Data de cálculo
- Quando informada será utilizada como data de início de cálculo do bem patrimonial. Caso não seja informada a data de início de cálculos será a data de aquisição.
- Indicador econômico da apólice seguros
- Caso não seja informado, será utilizado o indicador econômico informado para o bem patrimonial.
- Data de avaliação da apólice de seguros
- Caso não seja informado, será utilizado o valor original informado para o bem patrimonial.
- Estado físico do bem patrimonial
- Valida se o estado físico informado existe no sistema.
- Espécie do bem patrimonial
- Valida se a espécie informada existe no sistema.
- Marca do bem patrimonial
- Valida se a marca informada existe no sistema.
- Modelo do bem patrimonial
- Valida se o modelo informado existe no sistema.
- Licença de uso
- Valida se a licença de uso informada existe no sistema.
- Especificação técnica do bem patrimonial
- Valida se a especificação técnica informada existe para o bem patrimonial.
- Arrendador
- Valida se o arrendador informado existe no sistema.
- Contrato de leasing
- Valida se o contrato de leasing informado existe no sistema.
- Localização do bem patrimonial
- Valida se a localização informada existe no sistema.
Leitura e Criação dos Registros
Exemplo do programa para criação dos registros nas temp-tables com os bens patrimoniais a serem implantados:
/* Esta temp-table (tt_criacao_bem_pat_api_5) somente precisa estar declarada no programa chamador como NEW SHARED, mas não nao precisa ser alimentada.
Ela se faz necessário necessario devido a questões técnicas tecnicas */
DEF NEW shared temp-table tt_criacao_bem_pat_api_5 no-undo
field tta_cod_unid_organ_ext as character format "x(5)" label "Unid Organ Externa" column-label "Unid Organ Externa"
field tta_cod_cta_pat as character format "x(18)" label "Conta Patrimonial" column-label "Conta Patrimonial"
field tta_num_bem_pat as integer format ">>>>>>>>9" initial 0 label "Bem Patrimonial" column-label "Bem"
field tta_num_seq_bem_pat as integer format ">>>>9" initial 0 label "Sequência Bem" column-label "Sequência"
field tta_des_bem_pat as character format "x(40)" label "Descrição Bem Pat" column-label "Descrição Bem Pat"
field tta_dat_aquis_bem_pat as date format "99/99/9999" initial today label "Data Aquisição" column-label "Dat Aquis"
field tta_cod_plano_ccusto as character format "x(8)" label "Plano Centros Custo" column-label "Plano Centros Custo"
field tta_cod_ccusto_ext as character format "x(8)" label "Centro Custo Externo" column-label "CCusto Externo"
field tta_cod_estab_ext as character format "x(8)" label "Estabelecimento Exte" column-label "Estabelecimento Ext"
field tta_cod_unid_negoc_ext as character format "x(8)" label "Unid Negócio Externa" column-label "Unid Negócio Externa"
field tta_cod_finalid_econ_ext as character format "x(8)" label "Finalid Econ Externa" column-label "Finalidade Externa"
field ttv_val_aquis_bem_pat as decimal format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Aquisição Bem" column-label "Aquisição Bem"
field ttv_log_erro as logical format "Sim/Não" initial yes
field tta_qtd_bem_pat_represen as decimal format ">>>>>>>>9" initial 1 label "Quantidade Bens Representados" column-label "Bem Represen"
field tta_cdn_fornecedor as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
field tta_cod_docto_entr as character format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
field tta_cod_ser_nota as character format "x(5)" label "Série Nota" column-label "Série Nota"
field tta_num_item_docto_entr as integer format ">>>,>>9" initial 0 label "Numero Item" column-label "Num Item"
field tta_num_id_bem_pat as integer format ">>,>>>,>>9" initial 0 label "Identificação Bem" column-label "Identificação Bem"
field tta_des_narrat_bem_pat as character format "x(2000)" label "Narrativa Bem" column-label "Narrativa Bem"
field tta_log_bem_imptdo as logical format "Sim/Não" initial no label "Bem Importado" column-label "Bem Importado"
field tta_log_cr_pis as logical format "Sim/Não" initial no label "Credita PIS" column-label "Credita PIS"
field tta_log_cr_cofins as logical format "Sim/Não" initial no label "Credita COFINS" column-label "Credita COFINS"
field ttv_num_parc_pis_cofins as integer format "999" initial 0 label "Nro Parcelas" column-label "Nro Parcelas"
field tta_val_cr_pis as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Cred PIS/PASEP" column-label "Vl Cred PIS/PASEP"
field tta_val_cr_cofins as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Crédito COFINS" column-label "Credito COFINS"
field ttv_log_cr_csll as logical format "Sim/Não" initial no label "Credita CSLL" column-label "Credita CSLL"
field ttv_num_exerc_cr_csll as integer format "99" label "Exerc. Crédito CSLL" column-label "Exerc. Crédito CSLL"
.
/* Esta temp-table (tt_criacao_bem_pat_api_710) conterá os conter os registros dos bens patrimoniais a serem criados no sistema */
def temp-table tt_criacao_bem_pat_api_7 10 no-undo
field tta_cod_unid_organ_ext as character format "x(5)" label "Unid Organ Externa" column-label "Unid Organ Externa"
field tta_cod_cta_pat as character format "x(18)" label "Conta Patrimonial" column-label "Conta Patrimonial"
field tta_num_bem_pat as integer format ">>>>>>>>9" initial 0 label "Bem Patrimonial" column-label "Bem"
field tta_num_seq_bem_pat as integer format ">>>>9" initial 0 label "Sequência Sequˆncia Bem" column-label "SequênciaSequˆncia"
field tta_des_bem_pat as character format "x(40)" label "Descrição Descri‡Æo Bem Pat" column-label "Descrição Descri‡Æo Bem Pat"
field tta_dat_aquis_bem_pat as date format "99/99/9999" initial today label "Data AquisiçãoAquisi‡Æo" column-label "Dat Aquis"
field tta_cod_plano_ccusto as character format "x(8)" label "Plano Centros Custo" column-label "Plano Centros Custo"
field tta_cod_ccusto_ext as character format "x(8)" label "Centro Custo Externo" column-label "CCusto Externo"
field tta_cod_estab_ext as character format "x(8)" label "Estabelecimento Exte" column-label "Estabelecimento Ext"
field tta_cod_unid_negoc_ext as character format "x(8)" label "Unid Negócio Neg¢cio Externa" column-label "Unid Negócio Neg¢cio Externa"
field tta_cod_finalid_econ_ext as character format "x(8)" label "Finalid Econ Externa" column-label "Finalidade Externa"
field ttv_val_aquis_bem_pat as decimal format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Aquisição Aquisi‡Æo Bem" column-label "Aquisição Aquisi‡Æo Bem"
field ttv_log_erro as logical format "Sim/NãoNÆo" initial yes
field tta_qtd_bem_pat_represen as decimal format ">>>>>>>>9" initial 1 label "Quantidade Bens Representados" column-label "Bem Represen"
field tta_cdn_fornecedor as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
field tta_cod_docto_entr as character format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
field tta_cod_ser_nota as character format "x(5)" label "Série S‚rie Nota" column-label "Série S‚rie Nota"
field tta_num_item_docto_entr as integer format ">>>,>>9" initial 0 label "Numero Item" column-label "Num Item"
field tta_num_id_bem_pat as integer format ">>,>>>,>>9" initial 0 label "Identificação Identifica‡Æo Bem" column-label "Identificação Identifica‡Æo Bem"
field tta_des_narrat_bem_pat as character format "x(2000)" label "Narrativa Bem" column-label "Narrativa Bem"
field tta_log_bem_imptdo as logical format "Sim/NãoNÆo" initial no label "Bem Importado" column-label "Bem Importado"
field tta_log_cr_pis as logical format "Sim/NãoNÆo" initial no label "Credita PIS" column-label "Credita PIS"
field tta_log_cr_cofins as logical format "Sim/NãoNÆo" initial no label "Credita COFINS" column-label "Credita COFINS"
field ttv_num_parc_pis_cofins as integer format "999" initial 0 label "Nro Parcelas" column-label "Nro Parcelas"
field tta_val_cr_pis as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Cred PIS/PASEP" column-label "Vl Cred PIS/PASEP"
field tta_val_cr_cofins as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Crédito Cr‚dito COFINS" column-label "Credito COFINS"
field tta_val_base_pis as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Base PIS/PASEP" column-label "Vl Base PIS/PASEP"
field tta_val_base_cofins as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Base COFINS" column-label "Base COFINS"
field ttv_log_cr_csll as logical format "Sim/NãoNÆo" initial no label "Credita CSLL" column-label "Credita CSLL"
field ttv_num_exerc_cr_csll as integer format "99" label "Exerc. Crédito Cr‚dito CSLL" column-label "Exerc. Crédito Cr‚dito CSLL"
field tta_dat_calc_pat as date format "99/99/9999" initial today label "Data CálculoC lculo" column-label "Data CálculoC lculo"
field tta_cb3_ident_visual as Character format "x(20)" initial ? label "Número N£mero Plaqueta" column-label "Número N£mero Plaqueta"
field tta_cod_estado_fisic_bem_pat as character format "x(8)" label "Estado FísicoF¡sico" column-label "Estado FísicoF¡sico"
field tta_cod_espec_bem as character format "x(6)" label "Espécie Esp‚cie Bem Patrimonial" column-label "EspécieEsp‚cie"
field tta_cod_marca as character format "x(6)" label "Marca" column-label "Marca"
field tta_cod_modelo as character format "x(8)" label "Modelo" column-label "Modelo"
field tta_dat_avaliac_apol_seguro as date format "99/99/9999" initial today label "Data Avaliação Avalia‡Æo Apol" column-label "Data Avaliação Avalia‡Æo Apol"
field tta_val_avaliac_apol_seguro as decimal format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Avaliação Avalia‡Æo Apol" column-label "Valor Avaliação Avalia‡Æo Apol"
field tta_cod_licenc_uso as character format "x(12)" label "Licença Licen‡a Uso" column-label "Licen Uso"
field tta_cod_especif_tec as character format "x(8)" label "Especificação TécnicaEspecifica‡Æo T‚cnica" column-label "Especificação TécnicaEspecifica‡Æo T‚cnica"
field tta_cod_arrendador as character format "x(6)" label "Arrendador" column-label "Arrendador"
field tta_cod_contrat_leas as character format "x(12)" label "Contrato Leasing" column-label "Contr Leas"
field tta_cod_localiz as character format "x(12)" label "LocalizaçãoLocaliza‡Æo" column-label "LocalizaçãoLocaliza‡Æo"
field tta_cod_imagem as character format "x(30)" label "Imagem" column-label "Imagem"
field ttv_recrow_id id as Rowid
as recid
.field tta_cod_natur_operac as character format "x(6)" label "Natureza Opera‡Æo" column-label "Natureza Opera‡Æo"
field ttv_val_exc_icms as decimal format "->>,>>>,>>>,>>9.99" decimals 2 label "Valor ExclusÆo ICMS" column-label "Valor ExclusÆo ICMS"
.
/* Esta temp-table (tt_criacao_bem_pat_item_api_2) conter os /* Esta temp-table (tt_criacao_bem_pat_item_api) conterá os itens do documento de entrada a serem vinculados aos bens patrimoniais. Não é obrigatório criar registros nesta temp-table */
def temp-table tt_criacao_bem_pat_item_api_2 no-undo
field ttv_recrow_bem as recid format ">>>>>>9"Rowid
field tta_cdn_fornecedor as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
field tta_cod_docto_entr as character format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
field tta_cod_ser_nota as character format "x(5)" label "Série S‚rie Nota" column-label "Série S‚rie Nota"
field tta_num_item_docto_entr as integer format ">>>,>>9" initial 0 label "Numero Item" column-label "Num Item"
field tta_qtdcod_item_docto_entr natur_operac as decimal as character format ">>>>>>>>9" initial 0 label "Qtde Item Doctox(6)" label "Natureza Opera‡Æo" column-label "Qtde Natureza Opera‡Æo"
field tta_qtd_item_docto_entr as decimal format ">>>>>>>>9" initial 0 label "Qtde Item Docto" column-label "Qtde Item Docto"
index tt_id is primary unique
ttv_recrow_bem ascending
tta_cdn_fornecedor ascending
tta_cod_docto_entr ascending
tta_cod_ser_nota ascending
tta_num_item_docto_entr ascending
tta_cod_natur_operac ascending
.
/* esta Esta temp-table (tt_criacao_bem_pat_val_resid_1) conterá os conter os valores residuais dos bens patrimoniais a serem criados no sistema. Não é obrigatório criar registros nesta temp-table */
def temp-table tt_criacao_bem_pat_val_resid_1 no-undo
field ttv_recrow_bem as recid format ">>>>>>9"Rowid
field tta_cod_tip_calc as character format "x(7)" label "Tipo CálculoC lculo" column-label "Tipo CálculoC lculo"
field tta_cod_cenar_ctbl as character format "x(8)" label "Cenário ContábilCen rio Cont bil" column-label "Cenário ContábilCen rio Cont bil"
field tta_cod_finalid_econ as character format "x(10)" label "Finalidade" column-label "Finalidade"
field tta_val_resid_min as decimal format "->>>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Residual MínimoM¡nimo" column-label "Residual"
index tt_id is primary unique
ttv_recrow_bem ascending
tta_cod_tip_calc ascending
tta_cod_cenar_ctbl ascending
tta_cod_finalid_econ ascending
.
/* Esta temp-table (tt_erros_criacao_bem_pat_apiimg_1) será criada pela API e conterá os erros ocorridos durante a criação conter as imagens dos bens patrimoniais a serem criados no sistema. Não é obrigatório criar registros nesta temp-table */
DEF NEW shared def temp-table tt_erros_criacao_bem_pat_apiimg_1 no-undo
field ttattv_cod_unid_organ_ext row_bem as Rowid
field tta_des_imagem as character format "x(540)" label "Unid Organ ExternaDescri‡Æo" column-label "Unid Organ ExternaDescri‡Æo"
field tta_cod_cta_pat dat_img as character date format "x(18)" label "Conta Patrimonial99/99/9999" initial ? label "Data Imagem" column-label "Conta PatrimonialData Imagem"
field tta_num_bem_pat log_princ as integer logical format ">>>>>>>>9Sim/NÆo" initial 0 no label "Bem PatrimonialPrincipal" column-label "BemPrincipal"
field tta_numnom_seq_bem_pat arq_img as integer character format ">>>>9" initial 0 x(200)" label "Sequência BemArquivo Imagem" column-label "SequênciaArquivo"
field tta_des_bem_pat obs as character format "x(40255)" label "Descrição Bem PatObserva‡Æo" column-label "Descrição Bem PatObserva‡Æo"
.
/* Esta temp-table (tt_erros_criacao_bem_pat_api_1) ser criada pela API e conter os erros ocorridos durante a criaçåo dos bens patrimoniais */
DEF NEW shared temp-table tt_erros_criacao_bem_pat_api_1 no-undo field tta_dat_aquis_bem_pat as date format "99/99/9999" initial today label "Data Aquisição" column-label "Dat Aquis"
field tta_cod_finalidunid_econorgan_ext as character format "x(85)" label "Finalid Econ Unid Organ Externa" column-label "Finalidade Unid Organ Externa"
field ttvtta_cod_descta_mensagem pat as as character format "x(5018)" label "MensagemConta Patrimonial" column-label "MensagemConta Patrimonial"
.
def var v_hdl_program AS HANDLE NO-UNDO.
def var p_cod_return as char.
def var p_des_mensagem as char format "x(50)".
field tta_num_bem_pat as integer format ">>>>>>>>9" initial 0 label "Bem Patrimonial" column-label "Bem"
field tta_num_seq_bem_pat as integer format ">>>>9" initial 0 label "Sequncia Bem" column-label "Sequncia"
field tta_des_bem_pat as character format "x(40)" label "DescriÔÇÖo Bem Pat" column-label "DescriÔÇÖo Bem Pat"
field tta_dat_aquis_bem_pat as date format "99/99/9999" initial today label "Data AquisiÔÇÖo" column-label "Dat Aquis"
field tta_cod_finalid_econ_ext as character format "x(8)" label "Finalid Econ Externa" column-label "Finalidade Externa"
field ttv_des_mensagem as character format "x(50)" label "Mensagem" column-label "Mensagem"
.
DEF VAR v_cod_return AS CHAR FORMAT "X(40)" NO-UNDO.
DEF VAR v_des_mensagem AS CHAR FORMAT "X(50)" NO-UNDO.
DEF VAR v_hdl_program AS HANDLE NO-UNDO.
CREATE tt_criacao_bem_pat_api_10.
ASSIGN tt_criacao_bem_pat_api_10.tta_cod_unid_organ_Ext = "10"
tt_criacao_bem_pat_api_10.tta_cod_cta_pat = "034"
tt_criacao_bem_pat_api_10.tta_num_bem_pat = 224885
tt_criacao_bem_pat_api_10.tta_num_seq_bem_pat = 1
tt_criacao_bem_pat_api_10.tta_des_bem_pat = "Teste API - " + STRING(TODAY) + ' # ' + STRING(TIME,"hh:mm")
tt_criacao_bem_pat_api_10.tta_dat_aquis_bem_pat = 07/01/2023
tt_criacao_bem_pat_api_10.tta_cod_plano_ccusto = "Alfa"
tt_criacao_bem_pat_api_10.tta_cod_ccusto_ext = "31400"
tt_criacao_bem_pat_api_10.tta_cod_estab_ext = "1"
tt_criacao_bem_pat_api_10.tta_cod_unid_negoc_ext = "999"
tt_criacao_bem_pat_api_10.tta_cod_finalid_econ_ext = "0"
tt_criacao_bem_pat_api_10.ttv_val_aquis_bem_pat = 50000
tt_criacao_bem_pat_api_10.ttv_log_erro = no
tt_criacao_bem_pat_api_10.tta_qtd_bem_pat_represen = 1
tt_criacao_bem_pat_api_10.tta_cdn_fornecedor = 1
tt_criacao_bem_pat_api_10.tta_num_id_bem_pat = 0
tt_criacao_bem_pat_api_10.tta_des_narrat_Bem_pat = ""
tt_criacao_bem_pat_api_10.tta_log_cr_cofins = NO
tt_criacao_bem_pat_api_10.tta_log_cr_pis = NO
tt
create tt_criacao_bem_pat_api_7.10.ttv_num_parc_pis_cofins = 0
assign tt tt_criacao_bem_pat_api_710.tta_codval_unid_organ_Ext cr_pis = "10"
0
tt_criacao_bem_pat_api_10.tta_val_cr_cofins = 0
tt_criacao_bem_pat_api_710.tta_cod_Ctadocto_pat entr = "0343232"
tt_criacao_bem_pat_api_710.tta_numcod_bemser_pat nota = 220815'u'
tt_criacao_bem_pat_api_710.tta_num_seqitem_bemdocto_pat entr = 120
tt_criacao_bem_pat_api_710 .tta_desdat_bemcalc_pat = "Teste API - " + STRING(TODAY) + ' # ' + STRING(TIME,"hh:mm")
= 07/01/2023
tt_criacao_bem_pat_api_10.tta_cb3_ident_visual = '12345678'
tt_criacao_bem_pat_api_710.tta_cod_datestado_aquisfisic_bem_pat = TODAY - 31
= "ATIVO"
tt_criacao_bem_pat_api_710.tta_cod_planoespec_ccusto bem = "Alfa"
= '004'
tt_criacao_bem_pat_api_710.tta_cod_ccusto_ext marca = "31400"
= 'COMPAQ'
tt_criacao_bem_pat_api_710.tta_cod_estab_ext modelo = "1LS1"
tt_criacao_bem_pat_api_710.tta_coddat_unidavaliac_negocapol_ext seguro = "999"
= 07/01/2023
tt_criacao_bem_pat_api_710.tta_codval_finalidavaliac_econapol_ext seguro = "0"
50000
tt_criacao_bem_pat_api_710.ttvtta_valcod_aquis_bem_pat licenc_uso = 10000
'1'
tt_criacao_bem_pat_api_710.ttvtta_cod_logespecif_erro tec = no= '1'
tt_criacao_bem_pat_api_710.tta_qtd_Bem_pat_represen cod_arrendador = 1
= '10'
tt_criacao_bem_pat_api_710.tta_cdncod_contrat_fornecedor leas = 1'120220'
tt_criacao_bem_pat_api_710.tta_num_id_bem_pat cod_localiz = 0
= 'VIDRO-01'
tt_criacao_bem_pat_api_710.tta_des_narrat_Bem_pat cod_imagem = ""
= ''
tt_criacao_bem_pat_api_710.ttattv_logval_crexc_cofins icms = NO0
tt_criacao_bem_pat_api_710.ttattv_logrow_cr_pis id = NO
tt= ROWID(tt_criacao_bem_pat_api_7.ttv_num_parc_pis_cofins = 0
tt10).
CREATE tt_criacao_bem_pat_item_api_2.
ASSIGN tt_criacao_bem_pat_item_api_72.ttattv_val_cr_pis row_bem = 0
tttt_criacao_bem_pat_api_710.ttattv_val_cr_cofins = 0
row_id
tt_criacao_bem_pat_item_api_72.tta_codcdn_docto_entr fornecedor = "3232"13
tt_criacao_bem_pat_item_api_72.tta_cod_serdocto_nota entr = 'u'= "2206231"
tt_criacao_bem_pat_item_api_72.tta_numcod_item_docto_entr ser_nota = 20
"1"
tt_criacao_bem_pat_item_api_72.tta_datnum_calc_pat = TODAY - 15item_docto_entr = 20
tt_criacao_bem_pat_item_api_72.tta_cb3cod_identnatur_visual operac = '12345678'
"111A90"
tt_criacao_bem_pat_item_api_72.tta_cod_estado_fisicqtd_item_docto_entr = 1.
CREATE tt_criacao_bem_pat = "ATIVO"
tt_val_resid_1.
ASSIGN tt_criacao_bem_pat_val_apiresid_71.ttattv_codrow_espec_bem = '004'
ROWID(tt_criacao_bem_pat_api_10)
tt_criacao_bem_pat_val_apiresid_71.tta_cod_marca tip_calc = "DP" = 'COMPAQ'
tt_criacao_bem_pat_apival_resid_71.tta_cod_modelo cenar_ctbl = "LS1Fiscal"
tt_criacao_bem_pat_apival_resid_71.tta_datcod_avaliac_apol_seguro = TODAY - 10finalid_econ = "Corrente"
tt_criacao_bem_pat_val_apiresid_71.tta_val_avaliac_apol_seguro resid_min = 5000
.
CREATE tt tt_criacao_bem_pat_api_7.tta_cod_licenc_uso = '1'
tt_val_resid_1.
ASSIGN tt_criacao_bem_pat_val_apiresid_71.ttattv_codrow_especif_tec bem = '1'
ttROWID(tt_criacao_bem_pat_api_7.tta_cod_arrendador = '10'
10)
tt_criacao_bem_pat_apival_resid_71.tta_cod_contrattip_leas calc = '120220'
= "DP"
tt_criacao_bem_pat_val_apiresid_71.tta_cod_localiz = 'VIDRO-01'cenar_ctbl = "Fiscal"
tt_criacao_bem_pat_apival_resid_71.tta_cod_imagem = '0.30.600'_finalid_econ = "Fiscal"
tt_criacao_bem_pat_apival_resid_71.ttvtta_val_recresid_id min = RECID(= 4000.
CREATE tt_criacao_bem_pat_apiimg_7)1.
CREATE ASSIGN tt_criacao_bem_pat_itemimg_api.
ASSIGN 1.ttv_row_bem = ROWID(tt_criacao_bem_pat_item_api.ttv_rec_bem _api_10)
= tt tt_criacao_bem_pat_apiimg_71.ttvtta_rec_iddes_imagem = "Imagem do Bem Teste API - Numero 1 com observacao"
tt_criacao_bem_pat_itemimg_api1.tta_cdndat_fornecedor img = 1 TODAY
tt_criacao_bem_pat_itemimg_api1.tta_codlog_docto_entr princ = "3232"yes
tt_criacao_bem_pat_itemimg_api1.tta_codnom_ser_nota = "u"
tt_criacao_bem_pat_item_api.tta_num_item_docto_entr = 20
arq_img = "C:\Users\jaqueline\Downloads\bem_patrimonial_imagem_teste.jpg"
tt_criacao_bem_pat_itemimg_api1.tta_qtd_item_docto_entr = 1.des_obs = "Observacao da imagem carregada via API".
CREATE tt_criacao_bem_pat_valimg_resid1.
ASSIGN tt_criacao_bem_pat_valimg_resid1.ttv_recrow_bem = RECIDROWID(tt_criacao_bem_pat_api_710)
tt_criacao_bem_pat_valimg_resid1.tta_cod_tip_calc = "DP"
des_imagem = "Imagem do Bem Teste API - Numero 2 sem observacao"
tt_criacao_bem_pat_valimg_resid1.tta_cod_cenar_ctbl = "Fiscal"
dat_img = TODAY
tt_criacao_bem_pat_valimg_resid1.tta_cod_finalid_econ = "Corrente"
log_princ = no
tt_criacao_bem_pat_valimg_resid1.tta_valnom_residarq_min = 500. img = "C:\Users\jaqueline\Downloads\bem_patrimonial_imagem_sem_obesrvacao.jpg".
CREATE tt_criacao_bem_pat_valimg_resid.
1.
ASSIGN tt_criacao_bem_pat_valimg_resid1.ttv_recrow_bem = RECIDROWID(tt_criacao_bem_pat_api_710)
tt_criacao_bem_pat_valimg_resid1.tta_cod_tip_calc des_imagem = "DP" Imagem do Bem Teste API - Numero 3 sem data e sem observacao"
tt_criacao_bem_pat_valimg_resid1.tta_cod_cenar_ctbl = "Fiscal"
tt_criacao_bem_pat_val_resid.tta_cod_finalid_econ = "Fiscal" _log_princ = no
tt_criacao_bem_pat_valimg_resid1.tta_valnom_residarq_min = 400.img = "C:\Users\jaqueline\Downloads\nota_fiscal_bem_patrimonial.jpg".
RUN
run prgfin\fas\fas735zh.py PERSISTENT SET v_hdl_program.
run RUN pi_main_api_criacao_bem_pat_10 14 IN v_hdl_program
(input INPUT 1,
input INPUT "EMS2" /*matriz traudcao*/,
input INPUT "EMS2" /*matriz ccusto*/,
input INPUT "EMS2" /*matriz finalidade econ.*/,
input INPUT NO /*contabiliza*/,
INPUT TABLE tt_criacao_bem_pat_item_api_2,
INPUT INPUT TABLE tt_criacao_bem_pat_itemval_resid_api1,
INPUT INPUT TABLE tt_criacao_bem_pat_valimg_resid1,
INPUT INPUT TABLE tt_criacao_bem_pat_api_710,
output pOUTPUT v_cod_return,
output pOUTPUT v_des_mensagem).
if v_cod_return = "nok" then do:
disp v_des_mensagem.
if if can-find (first tt_erros_criacao_bem_pat_api_1) then do:
for each tt_erros_criacao_bem_pat_api_1:
disp tt_erros_criacao_bem_pat_api_1.
end.
end.
else disp v_des_mensagem end.
message "NOK".
end.
delete object DELETE OBJECT v_hdl_program.
assign ASSIGN v_hdl_program = ?.