Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

RUN prgfin\fas\fas735zh.py PERSISTENT SET v_hdl_program.
RUN pi_main_api_criacao_bem_pat_13 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_12,
                                         INPUT TABLE tt_criacao_bem_pat_val_resid_1,
                                         INPUT TABLE tt_criacao_bem_pat_img_1,
                                         INPUT TABLE tt_criacao_bem_pat_api_910,
                                         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.

p_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_12

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_910Esta temp-table contém os registros dos bens patrimoniais que serão criados.

v_cod_return

Retorna string “OK” se não ocorreram erros.

v_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.

...

Tabela Temporária

Descrição

Entrada/Saída

tt_criacao_bem_pat_api_910

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ício de Crédito CSLL

Sim

X

tta_dat_calc_patdate99/99/9999Data de início de cálculo do bem patrimonial.Não
tta_cb3_ident_visualcharx(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_patcharx(8)

Estado físico que o bem patrimonial apresenta no momento do registro da aquisição.

Não
tta_cod_espec_bemchar x(6)Espécie do bem patrimonial.Não
tta_cod_marcacharx(6)Marca correspondente ao bem patrimonial.Não
tta_cod_modelochar x(8)Código do modelo do bem patrimonial.Não
tta_dat_avaliac_apol_segurodate99/99/9999Data de avaliação da apólice de seguro.Não
tta_val_avaliac_apol_segurodecimal->>,>>>,>>>,>>9.99Valor de avaliação da apólice de seguro.Não
tta_cod_licenc_usocharx(8)Código da licença de uso.Não
tta_cod_especif_teccharx(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_arrendadorcharx(6)

Código do arrendador do bem patrimonial, quando o bem estiver associado a um Contrato de Leasing.

Não
tta_cod_contrat_leascharx(12)Código do contrato de Leasing.Não
tta_cod_localizcharx(12)

Código da localização física do bem patrimonial na empresa.

Não
tta_cod_imagemcharx(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_idrecidrowid>>>>>>9
Recid ROWID do registro do bem patrimonial criado na temp-table.Sim
tta_cod_natur_operaccharacterx(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_icmsdecimal->>,>>>,>>>,>>9.99Valor de exclusão de ICMS da base de cálculo do PIS/COFINSNão

...

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_12

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 que represente um fornecedor a qual o movimento está associado.

Sim


tta_cod_docto_entr

character

x(8)

Código 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_cod_natur_operaccharacterx(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

Quantidade do item vinculado ao bem patrimonial.

Sim


...

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.

Nã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_nom_arqcharacterx(100)

Nome do arquivo da imagem relacionada ao bem patrimonial.

Sim


tta_des_obscharacterx(200)Espaço disponível para anotações ou observações a respeito da imagem do bem patrimonial que está sendo implementada.Não

...

/* Esta temp-table (tt_criacao_bem_pat_api_5) somente precisa estar declarada no programa chamador como NEW SHARED, mas nao precisa ser alimentada.
  Ela  Ela se faz necessario devido a questões tecnicas */
DEF NEW shared temp-table tt_criacao_bem_pat_api_5 no-undo
    field tta_cod_unid_organ_ext  ext            as as character format "x(5)" label "Unid Organ Externa" column-label "Unid Organ Externa"
    field tta_cod_cta_pat  pat                 as  as character format "x(18)" label "Conta Patrimonial" column-label "Conta Patrimonial"
    field tta_num_bem_pat  pat                 as  as integer format ">>>>>>>>9" initial 0 label "Bem Patrimonial" column-label "Bem"
    field tta_num_seq_bem_pat  pat             as  as integer format ">>>>9" initial 0 label "Sequência Bem" column-label "Sequência"
    field tta_des_bem_pat  pat                 as  as character format "x(40)" label "Descrição Bem Pat" column-label "Descrição Bem Pat"
    field tta_dat_aquis_bem_pat  pat           as  as date format "99/99/9999" initial today label "Data Aquisição" column-label "Dat Aquis"
    field tta_cod_plano_ccusto  ccusto              as as character format "x(8)" label "Plano Centros Custo" column-label "Plano Centros Custo"
    field tta_cod_ccusto_ext  ext                as as character format "x(8)" label "Centro Custo Externo" column-label "CCusto Externo"
    field tta_cod_estab_ext  ext               as  as character format "x(8)" label "Estabelecimento Exte" column-label "Estabelecimento Ext"
    field tta_cod_unid_negoc_ext  ext            as as character format "x(8)" label "Unid Negócio Externa" column-label "Unid Negócio Externa"
    field tta_cod_finalid_econ_ext  ext          as as character format "x(8)" label "Finalid Econ Externa" column-label "Finalidade Externa"
    field ttv_val_aquis_bem_pat  pat           as  as decimal format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Aquisição Bem" column-label "Aquisição Bem"
    field ttv_log_erro  erro                      as as logical format "Sim/Não" initial yes
    field tta_qtd_bem_pat_represen  represen          as as decimal format ">>>>>>>>9" initial 1 label "Quantidade Bens Representados" column-label "Bem Represen"
    field tta_cdn_fornecedor  fornecedor                as as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
    field tta_cod_docto_entr  entr                as as character format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
    field tta_cod_ser_nota  nota                  as as character format "x(5)" label "Série Nota" column-label "Série Nota"
    field tta_num_item_docto_entr  entr         as  as integer format ">>>,>>9" initial 0 label "Numero Item" column-label "Num Item"
    field tta_num_id_bem_pat  pat                as as integer format ">>,>>>,>>9" initial 0 label "Identificação Bem" column-label "Identificação Bem"
    field tta_des_narrat_bem_pat  pat            as as character format "x(2000)" label "Narrativa Bem" column-label "Narrativa Bem"
    field tta_log_bem_imptdo  imptdo                as as logical format "Sim/Não" initial no label "Bem Importado" column-label "Bem Importado"
    field tta_log_cr_pis  pis                    as as logical format "Sim/Não" initial no label "Credita PIS" column-label "Credita PIS"
    field tta_log_cr_cofins  cofins               as  as logical format "Sim/Não" initial no label "Credita COFINS" column-label "Credita COFINS"
    field ttv_num_parc_pis_cofins  cofins         as  as integer format "999" initial 0 label "Nro Parcelas" column-label "Nro Parcelas"
    field tta_val_cr_pis  pis                    as 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  cofins               as  as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Crédito COFINS" column-label "Credito COFINS"
    field ttv_log_cr_csll  csll                 as  as logical format "Sim/Não" initial no label "Credita CSLL" column-label "Credita CSLL"
    field ttv_num_exerc_cr_csll  csll           as  as integer format "99" label "Exerc. Crédito CSLL" column-label "Exerc. Crédito CSLL"
    .

/* Esta temp-table (tt_criacao_bem_pat_api_910) conter  os conter  os registros dos bens patrimoniais a serem criados no sistema */
def temp-table tt_criacao_bem_pat_api_9 10 no-undo
    field tta_cod_unid_organ_ext  ext            as as character format "x(5)" label "Unid Organ Externa" column-label "Unid Organ Externa"
    field tta_cod_cta_pat  pat                 as  as character format "x(18)" label "Conta Patrimonial" column-label "Conta Patrimonial"
    field tta_num_bem_pat  pat                 as  as integer format ">>>>>>>>9" initial 0 label "Bem Patrimonial" column-label "Bem"
    field tta_num_seq_bem_pat  pat             as  as integer format ">>>>9" initial 0 label "Sequência Sequˆncia Bem" column-label "SequênciaSequˆncia"
    field tta_des_bem_pat  pat                 as  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  pat           as  as date format "99/99/9999" initial today label "Data AquisiçãoAquisi‡Æo" column-label "Dat Aquis"
    field tta_cod_plano_ccusto  ccusto              as as character format "x(8)" label "Plano Centros Custo" column-label "Plano Centros Custo"
    field tta_cod_ccusto_ext  ext                as as character format "x(8)" label "Centro Custo Externo" column-label "CCusto Externo"
    field tta_cod_estab_ext  ext               as  as character format "x(8)" label "Estabelecimento Exte" column-label "Estabelecimento Ext"
    field tta_cod_unid_negoc_ext  ext            as 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  ext          as as character format "x(8)" label "Finalid Econ Externa" column-label "Finalidade Externa"
    field ttv_val_aquis_bem_pat  pat           as  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  erro                      as as logical format "Sim/NãoNÆo" initial yes
    field tta_qtd_bem_pat_represen  represen          as as decimal format ">>>>>>>>9" initial 1 label "Quantidade Bens Representados" column-label "Bem Represen"
    field tta_cdn_fornecedor  fornecedor                as as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
    field tta_cod_docto_entr  entr                as as character format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
    field tta_cod_ser_nota  nota                  as as character format "x(5)" label "Série S‚rie Nota" column-label "Série S‚rie Nota"
    field tta_num_item_docto_entr  entr         as  as integer format ">>>,>>9" initial 0 label "Numero Item" column-label "Num Item"
    field tta_num_id_bem_pat  pat                as 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  pat            as as character format "x(2000)" label "Narrativa Bem" column-label "Narrativa Bem"
    field tta_log_bem_imptdo  imptdo                as as logical format "Sim/NãoNÆo" initial no label "Bem Importado" column-label "Bem Importado"
    field tta_log_cr_pis  pis                    as as logical format "Sim/NãoNÆo" initial no label "Credita PIS" column-label "Credita PIS"
    field tta_log_cr_cofins  cofins               as  as logical format "Sim/NãoNÆo" initial no label "Credita COFINS" column-label "Credita COFINS"
    field ttv_num_parc_pis_cofins  cofins         as  as integer format "999" initial 0 label "Nro Parcelas" column-label "Nro Parcelas"
    field tta_val_cr_pis  pis                    as 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  cofins               as  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  pis                  as 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  cofins             as  as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Base COFINS" column-label "Base COFINS"
    field ttv_log_cr_csll  csll                 as  as logical format "Sim/NãoNÆo" initial no label "Credita CSLL" column-label "Credita CSLL"
    field ttv_num_exerc_cr_csll  csll           as  as integer format "99" label "Exerc. Crédito Cr‚dito CSLL" column-label "Exerc. Crédito Cr‚dito CSLL"
    field tta_dat_calc_pat  pat                  as as date format "99/99/9999" initial today label "Data CálculoC lculo" column-label "Data CálculoC lculo"
    field tta_cb3_ident_visual  visual              as 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  pat      as as character format "x(8)" label "Estado FísicoF¡sico" column-label "Estado FísicoF¡sico"
    field tta_cod_espec_bem  bem               as  as character format "x(6)" label "Espécie Esp‚cie Bem Patrimonial" column-label "EspécieEsp‚cie"
    field tta_cod_marca  marca                   as  as character format "x(6)" label "Marca" column-label "Marca"
    field tta_cod_modelo  modelo                    as as character format "x(8)" label "Modelo" column-label "Modelo"
    field tta_dat_avaliac_apol_seguro  seguro     as  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  seguro     as  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  uso                as as character format "x(12)" label "Licença Licen‡a Uso" column-label "Licen Uso"
    field tta_cod_especif_tec  tec             as  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  arrendador                as as character format "x(6)" label "Arrendador" column-label "Arrendador"
    field tta_cod_contrat_leas  leas              as as character format "x(12)" label "Contrato Leasing" column-label "Contr Leas"
    field tta_cod_localiz  localiz                 as  as character format "x(12)" label "LocalizaçãoLocaliza‡Æo" column-label "LocalizaçãoLocaliza‡Æo"
    field tta_cod_imagem  imagem                    as as character format "x(30)" label "Imagem" column-label "Imagem"
    field ttv_recrow_id  id                        as recid format ">>>>>>9"as Rowid
    field tta_cod_natur_operac  operac              as as character format "x(6)" label "Natureza OperaçãoOpera‡Æo" column-label "Natureza OperaçãoOpera‡Æo"
    field ttv_val_exc_icms                 as decimal format "->>,>>>,>>>,>>9.99" decimals 2 label "Valor Exclusão ExclusÆo ICMS" column-label "Valor Exclusão ExclusÆo ICMS"
    .

/* Esta temp-table (tt_criacao_bem_pat_item_api_12) conter  os 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_1 2 no-undo
    field ttv_recrow_bem  bem                     as recid format ">>>>>>9" as Rowid
    field tta_cdn_fornecedor  fornecedor                as as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
    field tta_cod_docto_entr  entr                as as character format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
    field tta_cod_ser_nota  nota                  as as character format "x(5)" label "Série S‚rie Nota" column-label "Série S‚rie Nota"
    field tta_num_item_docto_entr  entr         as  as integer format ">>>,>>9" initial 0 label "Numero Item" column-label "Num Item"
    field tta_cod_natur_operac  operac              as as character format "x(6)" label "Natureza OperaçãoOpera‡Æo" column-label "Natureza OperaçãoOpera‡Æo"
    field tta_qtd_item_docto_entr  entr         as  as decimal format ">>>>>>>>9" initial 0 label "Qtde Item Docto" column-label "Qtde Item Docto"
    index tt_id  id                           is  is primary unique
          ttv_recrow_bem  bem                     ascending ascending
          tta_cdn_fornecedor  fornecedor                ascendingascending
          tta_cod_docto_entr  entr                ascendingascending
          tta_cod_ser_nota  nota                  ascendingascending
          tta_num_item_docto_entr  entr         ascending ascending
          tta_cod_natur_operac  operac              ascendingascending
    .

/* 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  bem                     as recid format ">>>>>>9" as Rowid
    field tta_cod_tip_calc  calc                  as as character format "x(7)" label "Tipo CálculoC lculo" column-label "Tipo CálculoC lculo"
    field tta_cod_cenar_ctbl  ctbl                as 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  econ              as as character format "x(10)" label "Finalidade" column-label "Finalidade"
    field tta_val_resid_min  min               as  as decimal format "->>>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Residual MínimoM¡nimo" column-label "Residual"
    index tt_id  id                           is  is primary unique
          ttv_recrow_bem  bem                     ascending ascending
          tta_cod_tip_calc  calc                  ascendingascending
          tta_cod_cenar_ctbl  ctbl                ascendingascending
          tta_cod_finalid_econ  econ              ascendingascending
    .

/* Esta temp-table (tt_criacao_bem_pat_img_1) conter  as conter  as imagens dos bens patrimoniais a serem criados no sistema. Não é obrigatório criar registros nesta temp-table */ 
def temp-table tt_criacao_bem_pat_img_1 no-undo
    field ttv_recrow_bem  bem                     as recid format ">>>>>>9" as Rowid
    field tta_des_imagem  imagem                    as as character format "x(40)" label "DescriçãoDescri‡Æo" column-label "DescriçãoDescri‡Æo"
    field tta_dat_img  img                     as  as date format "99/99/9999" initial ? label "Data Imagem" column-label "Data Imagem"
    field tta_log_princ  princ                   as  as logical format "Sim/NãoNÆo" initial no label "Principal" column-label "Principal"
    field tta_nom_arq_img  img                 as  as character format "x(200)" label "Arquivo Imagem" column-label "Arquivo"
    field tta_des_obs  obs                     as  as character format "x(255)" label "ObservaçãoObserva‡Æo" column-label "ObservaçãoObserva‡Æo"
    .

/* Esta temp-table (tt_erros_criacao_bem_pat_api_1) ser  criada ser  criada pela API e conter  os 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_cod_unid_organ_ext  ext            as as character format "x(5)" label "Unid Organ Externa" column-label "Unid Organ Externa"
    field tta_cod_cta_pat  pat                 as  as character format "x(18)" label "Conta Patrimonial" column-label "Conta Patrimonial"
    field tta_num_bem_pat  pat                 as  as integer format ">>>>>>>>9" initial 0 label "Bem Patrimonial" column-label "Bem"
    field tta_num_seq_bem_pat  pat             as  as integer format ">>>>9" initial 0 label "SequŒˆncia Bem" column-label "SequŒˆncia"
    field tta_des_bem_pat  pat                 as  as character format "x(40)" label "DescriŒ‡ÔÇÖo Bem Pat" column-label "DescriŒ‡ÔÇÖo Bem Pat"
    field tta_dat_aquis_bem_pat  pat           as  as date format "99/99/9999" initial today label "Data AquisiŒ‡ÔÇÖo" column-label "Dat Aquis"
    field tta_cod_finalid_econ_ext  ext          as as character format "x(8)" label "Finalid Econ Externa" column-label "Finalidade Externa"
    field ttv_des_mensagem  mensagem                  as as character format "x(50)" label "Mensagem" column-label "Mensagem"
    .

DEF VAR v_cod_return   AS 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 program  AS HANDLE NO-UNDO.

CREATE tt_criacao_bem_pat_api_910.
ASSIGN tt_criacao_bem_pat_api_910.tta_cod_unid_organ_Ext       = "10"
       tt_criacao_bem_pat_api_910.tta_cod_cta_pat              = "034"
       tt_criacao_bem_pat_api_910.tta_num_bem_pat              = 220853220878
       tt_criacao_bem_pat_api_910.tta_num_seq_bem_pat          = 1
       tt_criacao_bem_pat_api_910.tta_des_bem_pat              = "Teste API - " + STRING(TODAY) + ' # ' + STRING(TIME,"hh:mm")
       tt_criacao_bem_pat_api_10.tta_dat_aquis_bem_pat        = 0709/01/2023
       tt_criacao_bem_pat_api_910.tta_cod_plano_ccusto         = "Alfa"
       tt_criacao_bem_pat_api_910.tta_cod_ccusto_ext           = "31400"
       tt_criacao_bem_pat_api_910.tta_cod_estab_ext            = "1"
       tt_criacao_bem_pat_api_910.tta_cod_unid_negoc_ext       = "999"
       tt_criacao_bem_pat_api_910.tta_cod_finalid_econ_ext     = "0"
       tt_criacao_bem_pat_api_910.ttv_val_aquis_bem_pat        = 10000
       tt_criacao_bem_pat_api_910.ttv_log_erro                 = no
       tt_criacao_bem_pat_api_910.tta_qtd_bem_pat_represen     = 1
       tt_criacao_bem_pat_api_910.tta_cdn_fornecedor           = 1
       tt_criacao_bem_pat_api_910.tta_num_id_bem_pat           = 0
       tt_criacao_bem_pat_api_910.tta_des_narrat_Bem_pat       = ""
       tt_criacao_bem_pat_api_910.tta_log_cr_cofins            = NO
       tt_criacao_bem_pat_api_910.tta_log_cr_pis               = NO
       tt_criacao_bem_pat_api_910.ttv_num_parc_pis_cofins      = 0
       tt_criacao_bem_pat_api_910.tta_val_cr_pis               = 0
       tt_criacao_bem_pat_api_910.tta_val_cr_cofins            = 0
       tt_criacao_bem_pat_api_910.tta_cod_docto_entr           = "3232"
       tt_criacao_bem_pat_api_910.tta_cod_ser_nota             = 'u'
       tt_criacao_bem_pat_api_910.tta_num_item_docto_entr      = 20
       tt_criacao_bem_pat_api_9 10 .tta_dat_calc_pat            = 0709/01/2023
       tt_criacao_bem_pat_api_910.tta_cb3_ident_visual         = '12345678'
       tt_criacao_bem_pat_api_910.tta_cod_estado_fisic_bem_pat = "ATIVO"
       tt_criacao_bem_pat_api_910.tta_cod_espec_bem            = '004' 
       tt_criacao_bem_pat_api_910.tta_cod_marca                = 'COMPAQ'
       tt_criacao_bem_pat_api_910.tta_cod_modelo               = "LS1"
       tt_criacao_bem_pat_api_910.tta_dat_avaliac_apol_seguro  = 0709/01/2023
       tt_criacao_bem_pat_api_910.tta_val_avaliac_apol_seguro  = 5000
       tt_criacao_bem_pat_api_910.tta_cod_licenc_uso           = '1'
       tt_criacao_bem_pat_api_910.tta_cod_especif_tec          = '1'
       tt_criacao_bem_pat_api_910.tta_cod_arrendador           = '10'
       tt_criacao_bem_pat_api_910.tta_cod_contrat_leas         = '120220'
       tt_criacao_bem_pat_api_910.tta_cod_localiz              = 'VIDRO-01'
       tt_criacao_bem_pat_api_910.tta_cod_imagem               = ''
       tt_criacao_bem_pat_api_910.ttv_val_exc_icms             = 0
       tt_criacao_bem_pat_api_910.ttv_recrow_id                   = RECIDROWID(tt_criacao_bem_pat_api_910).

CREATE tt_criacao_bem_pat_item_api_12.
ASSIGN tt_criacao_bem_pat_item_api_12.ttv_recrow_bem  bem             = tt_criacao_bem_pat_api_910.ttv_recrow_id
       tt_criacao_bem_pat_item_api_12.tta_cdn_fornecedor  fornecedor      = 13 
       tt_criacao_bem_pat_item_api_12.tta_cod_docto_entr  entr      = "2206231"
       tt_criacao_bem_pat_item_api_12.tta_cod_ser_nota  nota        = "1"
       tt_criacao_bem_pat_item_api_12.tta_num_item_docto_entr = 20
       tt_criacao_bem_pat_item_api_12.tta_cod_natur_operac  operac    = "111A90"
       tt_criacao_bem_pat_item_api_12.tta_qtd_item_docto_entr = 1.

CREATE tt_criacao_bem_pat_val_resid_1.
ASSIGN tt_criacao_bem_pat_val_resid_1.ttv_recrow_bem  bem          = RECIDROWID(tt_criacao_bem_pat_api_910)
       tt_criacao_bem_pat_val_resid_1.tta_cod_tip_calc  calc     = "DP"              
       tt_criacao_bem_pat_val_resid_1.tta_cod_cenar_ctbl  ctbl   = "Fiscal"
       tt_criacao_bem_pat_val_resid_1.tta_cod_finalid_econ = "Corrente"
       tt_criacao_bem_pat_val_resid_1.tta_val_resid_min  min    = 500.

CREATE tt_criacao_bem_pat_val_resid_1.
ASSIGN tt_criacao_bem_pat_val_resid_1.ttv_recrow_bem  bem          = RECIDROWID(tt_criacao_bem_pat_api_910)
       tt_criacao_bem_pat_val_resid_1.tta_cod_tip_calc  calc     = "DP"
       tt_criacao_bem_pat_val_resid_1.tta_cod_cenar_ctbl  ctbl   = "Fiscal"
       tt_criacao_bem_pat_val_resid_1.tta_cod_finalid_econ = "Fiscal"
       tt_criacao_bem_pat_val_resid_1.tta_val_resid_min  min    = 400.

CREATE tt_criacao_bem_pat_img_1.
ASSIGN tt_criacao_bem_pat_img_1.ttv_recrow_bem  bem     = RECIDROWID(tt_criacao_bem_pat_api_910)
       tt_criacao_bem_pat_img_1.tta_des_imagem  imagem  = "Imagem do Bem Teste API - Numero 1 com observacao"
       tt_criacao_bem_pat_img_1.tta_dat_img  img     = TODAY
       tt_criacao_bem_pat_img_1.tta_log_princ  princ   = yes
       tt_criacao_bem_pat_img_1.tta_nom_arq_img = "C:\Users\jaqueline\Downloads\bem_patrimonial_imagem_teste.jpg"
       tt_criacao_bem_pat_img_1.tta_des_obs  obs     = "Observacao da imagem carregada via API".

CREATE tt_criacao_bem_pat_img_1.
ASSIGN tt_criacao_bem_pat_img_1.ttv_recrow_bem  bem     = RECIDROWID(tt_criacao_bem_pat_api_910)
       tt_criacao_bem_pat_img_1.tta_des_imagem  imagem  = "Imagem do Bem Teste API - Numero 2 sem observacao"
       tt_criacao_bem_pat_img_1.tta_dat_img  img     = TODAY
       tt_criacao_bem_pat_img_1.tta_log_princ  princ   = no
       tt_criacao_bem_pat_img_1.tta_nom_arq_img = "C:\Users\jaqueline\Downloads\bem_patrimonial_imagem_sem_obesrvacao.jpg".

CREATE tt_criacao_bem_pat_img_1.
ASSIGN tt_criacao_bem_pat_img_1.ttv_recrow_bem  bem     = RECIDROWID(tt_criacao_bem_pat_api_910)
       tt_criacao_bem_pat_img_1.tta_des_imagem  imagem  = "Imagem do Bem Teste API - Numero 3 sem data e sem observacao"
       tt_criacao_bem_pat_img_1.tta_log_princ  princ   = no
       tt_criacao_bem_pat_img_1.tta_nom_arq_img = "C:\Users\jaqueline\Downloads\nota_fiscal_bem_patrimonial.txtjpg".

RUN prgfin\fas\fas735zh.py PERSISTENT SET v_hdl_program.

RUN pi_main_api_criacao_bem_pat_13 14 IN v_hdl_program 
                                   (INPUT 1, 
                                    INPUT "EMS2" /*matriz traudcao*/, 
                                    INPUT "EMS2" /*matriz ccusto*/,
                                    INPUT "EMS2" /*matriz finalidade econ.*/,
                                    INPUT NO /*contabiliza*/,
                                    INPUT TABLE tt_criacao_bem_pat_item_api_12,
                                    INPUT TABLE tt_criacao_bem_pat_val_resid_1,
                                    INPUT TABLE tt_criacao_bem_pat_img_1,
                                    INPUT TABLE tt_criacao_bem_pat_api_910,
                                    OUTPUT v_cod_return,
                                    OUTPUT v_des_mensagem).

if v_cod_return = "nok" then do:
   disp v_des_mensagem.
   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.
  message "NOK".
      end.
   end.
   else disp v_des_mensagem message "NOK".
end.

DELETE OBJECT v_hdl_program.
ASSIGN v_hdl_program = ?.

...