Árvore de páginas

Versões comparadas

Chave

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

Documento Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicoprgfin/fas/fas735zh

Objetivo

Criar bens patrimoniais no módulo de Ativo Fixo do EMS 5.

...

A sintaxe para a chamada da API é:

...

DEF VAR v_hdl_program

...

 AS HANDLE NO-UNDO.
DEF VAR v_cod_return   AS CHAR.
DEF VAR v_des_mensagem AS CHAR FORMAT "X(50)".

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

...

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_10,
                                         OUTPUT v_cod_return,
                                         OUTPUT v_des_mensagem).

DELETE PROCEDURE v_hdl_program.

Parâmetros

Parâmetro

Descrição

p_num_vers_integr_api

Será utilizado para determinar

                                         OUTPUT v_cod_return,

                                         OUTPUT v_des_mensagem).

DELETE PROCEDURE v_hdl_program.

Parâmetros

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.

Pp_cod_matriz_Tradtrad_ccusto_ext

Deve ser informada a matriz de tradução de centros de custo.

Pp_cod_matriz_trad_finalid_Extext

Deve ser informada a matriz de tradução de finalidade econômica.

Pp_log_ctbz

Deve ser YES para assinalar que o movimento como de implantação seja contabilizado. Deve ser NO para que o movimento de implenatação 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_710Esta temp-table contem 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.

Observações:

-        Devem ser geradas algumas temp-tables no programa que chamará a API. Estas temp-tables conterão as informações sobre os bens patrimoniais que serão implantados no Ativo Fixo.

...

A API retornará na tabela temporária tt_erros_criacao_bem_pat_api_1 todos os erros encontrados ou mensagens de alerta gerados durante o processo de validação dos movimentos.

Quando ocorrer algum erro antes da criação dos bens patrimoniais este será retornado na variável p v_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.

localLocal

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

tta_cod_unid_organ_ext

character

x(3)

Código da unidade

organizacional  externa (

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)

Conta

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

Seqüência

Número da sequência do bem patrimonial. (

idem

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

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

(o

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.

Obs.

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.

Obs.

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.

Obs.

Importante: Depende que o

Bem

bem patrimonial credite PIS ou COFINS.

O valor passado deverá ser 00 para não credita

e

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

Número da plaqueta

Nãotta_cod_estado_fisic_bem_patcharx(8)Estado físico do bem

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
do
correspondente ao bem patrimonial.Não
tta_cod_modelochar x(8)
Modelo
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)
Licença
Código da licença de uso.Não
tta_cod_especif_teccharx(8)
Especificação técnicaNão
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_
tta_
cod_arrendadorcharx(6)
Arrendador

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

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

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_
rec
row_id
recidRecid
rowid
>>>>>>9

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

 

2) Tabela de erros

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)Unid Organ Externa

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)

Conta Patrimonial

Código da conta patrimonial.



tta_num_bem_pat

integer

>>>>>>>>9Bem Patrimonial

Código do bem patrimonial.



tta_num_seq_bem_pat

integer

>>>>9

Sequência Bemdo bem patrimonial.



tta_des_bem_pat

character

x(40)

Descrição Bem Patrimonialdo bem patrimonial.



tta_dat_aquis_bem_pat

date

99/99/9999

Data Aquisiçãoda aquisição do bem patrimonial.



tta_cod_finalid_econ_ext

character

x(8)

Finalid Econ ExternaCó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.



...

3) Itens de Documento de Entrada vinculados ao Bembem patrimonial

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

qtditemdocto_entr

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_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

Decimal

>>>>>>>>9

Quantidade do item vinculado ao bem

Sim


 

4) Valores Residuais do Bembem 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

Sim

 

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
    • Verifica, caso informado, se já não existe um bem com o mesmo número no sistema. (levando em conta que a chave completa do bem é empresa, conta patrimonial, número do bem e sequência)
  • Data de cálculo
    • Quando informada será utilizada como data de início de cálculo do bem. 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
  • Data de avaliação da apólice de seguros
    • Caso não seja informado, será utilizado o valor original informado para o bem
  • Estado físico do bem
    • Valida se o estado físico informado existe no sistema
  • Espécie do bem
    • Valida se a espécie informada existe no sistema
  • Marca do bem
    • Valida se a marca informada existe no sistema
  • Modelo do bem
    • 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
    • Valida se a especificação técnica informada existe para o bem
  • 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
    • 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 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 precisa ser alimentada. Ela se faz necessário devido a questões técnicas */

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



5) Imagens do bem patrimonial

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_row_bem

rowid


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


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 nao precisa ser alimentada.
  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           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_10) conter  os registros dos bens patrimoniais a serem criados no sistema */
def temp-table tt_criacao_bem_pat_api_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 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"DEF NEW shared temp-table tt_criacao_bem_pat_api_5 no-undo
    field tta_cod_unid_organnegoc_ext           as character format "x(58)" label "Unid Organ Neg¢cio Externa" column-label "Unid Organ Neg¢cio Externa"
    field tta_cod_ctafinalid_econ_pat ext                  as as character format "x(188)" label "Conta PatrimonialFinalid Econ Externa" column-label "Conta PatrimonialFinalidade Externa"
    field ttattv_val_numaquis_bem_pat                  as integer decimal format ">>>>>>>>9" ->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Aquisi‡Æo Bem Patrimonial" column-label "Aquisi‡Æo Bem"
    field ttattv_num_seq_bem_pat log_erro                      as integer as logical format ">>>>9Sim/NÆo" initial 0 label "Sequência Bem" column-label "Sequência"yes
    field tta_desqtd_bem_pat_represen                  as character as decimal format "x(40)" label "Descrição Bem Pat>>>>>>>>9" initial 1 label "Quantidade Bens Representados" column-label "Descrição Bem PatRepresen"
    field tta_dat_aquis_bem_pat cdn_fornecedor                as date as Integer format "99/99/9999>>>,>>>,>>9" initial today 0 label "Data AquisiçãoFornecedor" column-label "Dat AquisFornecedor"
    field tta_cod_planodocto_ccusto entr               as character format "x(8)" label "Plano Centros CustoDocto Entrada" column-label "Plano Centros CustoDocto Entrada"
    field tta_cod_ccustoser_ext nota                 as character format "x(85)" label "Centro Custo ExternoS‚rie Nota" column-label "CCusto ExternoS‚rie Nota"
    field tta_codnum_item_estab_ext       docto_entr          as character integer format "x(8)" label "Estabelecimento Exte>>>,>>9" initial 0 label "Numero Item" column-label "Estabelecimento ExtNum Item"
    field tta_codnum_unidid_negocbem_ext pat               as character integer format "x(8)" label "Unid Negócio Externa>>,>>>,>>9" initial 0 label "Identifica‡Æo Bem" column-label "Unid Negócio ExternaIdentifica‡Æo Bem"
    field tta_coddes_finalidnarrat_econbem_ext pat           as character format "x(82000)" label "Finalid Econ ExternaNarrativa Bem" column-label "Finalidade ExternaNarrativa Bem"
    field ttvtta_val_aquislog_bem_pat imptdo                as decimal format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Aquisição Bemas logical format "Sim/NÆo" initial no label "Bem Importado" column-label "Aquisição Bem Importado"
    field ttvtta_log_erro cr_pis                     as logical format "Sim/NãoNÆo" initial yesno label "Credita PIS" column-label "Credita PIS"
    field tta_qtdlog_bem_pat_represen cr_cofins               as decimal  as logical format ">>>>>>>>9Sim/NÆo" initial 1 no label "Quantidade Bens RepresentadosCredita COFINS" column-label "Bem RepresenCredita COFINS"
    field tta_cdn_fornecedor ttv_num_parc_pis_cofins               as Integer  as integer format ">>>,>>>,>>9999" initial 0 label "FornecedorNro Parcelas" column-label "FornecedorNro Parcelas"
    field tta_codval_doctocr_entr pis                   as character decimal format "x(8)" label "Docto Entrada>>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Cred PIS/PASEP" column-label "Docto EntradaVl Cred PIS/PASEP"
    field tta_codval_sercr_nota cofins                 as character format "x(5)" label "Série Nota as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Cr‚dito COFINS" column-label "Série NotaCredito COFINS"
    field tta_numval_item_docto_entr base_pis                  as integer as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Numero ItemValor Base PIS/PASEP" column-label "Num ItemVl Base PIS/PASEP"
    field tta_numval_idbase_bem_pat cofins               as integer  as decimal format ">>>>>,>>>,>>9.99" decimals 2 initial 0 label "Identificação BemValor Base COFINS" column-label "Identificação BemBase COFINS"
    field ttattv_deslog_narrat_bem_pat cr_csll                 as character  as logical format "x(2000)" label "Narrativa BemSim/NÆo" initial no label "Credita CSLL" column-label "Narrativa BemCredita CSLL"
    field ttattv_num_logexerc_bemcr_imptdo csll               as logical  as integer format "Sim/Não99" initial no label "Bem ImportadoExerc. Cr‚dito CSLL" column-label "Bem ImportadoExerc. Cr‚dito CSLL"
    field tta_logdat_crcalc_pis pat                   as logical date format "Sim99/99/Não9999" initial no today label "Credita PISData C lculo" column-label "Credita PISData C lculo"
    field tta_logcb3_crident_cofins visual                as logical as Character format "Sim/Nãox(20)" initial no ? label "Credita COFINSN£mero Plaqueta" column-label "Credita COFINSN£mero Plaqueta"
    field ttvtta_cod_numestado_parcfisic_pisbem_cofins pat          as integer as character format "999" initial 0 x(8)" label "Nro ParcelasEstado F¡sico" column-label "Nro ParcelasEstado F¡sico"
    field tta_valcod_crespec_pis bem                   as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Cred PIS/PASEP as character format "x(6)" label "Esp‚cie Bem Patrimonial" column-label "Vl Cred PIS/PASEPEsp‚cie"
    field tta_val_cr_cofins cod_marca                    as decimal character format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Crédito COFINSx(6)" label "Marca" column-label "Credito COFINSMarca"
    field ttvtta_log_cr_csll cod_modelo                    as logical as character format "Sim/Não" initial no x(8)" label "Credita CSLLModelo" column-label "Credita CSLLModelo"
    field ttvtta_numdat_exercavaliac_cr_csll       apol_seguro      as integer date format "99/99/9999" initial today label "Exerc. Crédito CSLLData Avalia‡Æo Apol" column-label "Exerc. Crédito CSLL"
    .

/* esta temp-table conterá os registros dos bens a serem criados no sistema */

Data Avalia‡Æo Apol"def temp-table tt_criacao_bem_pat_api_7 no-undo
    field tta_codval_unidavaliac_organapol_ext seguro           as character format "x(5)" label "Unid Organ Externa as decimal format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Avalia‡Æo Apol" column-label "Unid Organ ExternaValor Avalia‡Æo Apol"
    field tta_cod_ctalicenc_pat uso                  as as character format "x(1812)" label "Conta PatrimonialLicen‡a Uso" column-label "Conta PatrimonialLicen Uso"
    field tta_numcod_bemespecif_pat     tec              as integer character format ">>>>>>>>9" initial 0 x(8)" label "Bem PatrimonialEspecifica‡Æo T‚cnica" column-label "BemEspecifica‡Æo T‚cnica"
    field tta_num_seq_bem_pat cod_arrendador                as integer as character format ">>>>9" initial 0 x(6)" label "Sequência BemArrendador" column-label "SequênciaArrendador"
    field tta_descod_bemcontrat_pat leas                  as as character format "x(4012)" label "Descrição Bem PatContrato Leasing" column-label "Descrição Bem PatContr Leas"
    field tta_dat_aquis_bem_pat cod_localiz                  as date character format "99/99/9999" initial today label "Data Aquisiçãox(12)" label "Localiza‡Æo" column-label "Dat AquisLocaliza‡Æo"
    field tta_cod_plano_ccusto imagem                   as character format "x(830)" label "Plano Centros CustoImagem" column-label "Plano Centros Custo"Imagem"
    field ttv_row_id                       as Rowid
    field tta_cod_ccustonatur_ext operac               as character format "x(86)" label "Centro Custo ExternoNatureza Opera‡Æo" column-label "CCusto ExternoNatureza Opera‡Æo"
    field ttattv_codval_estabexc_ext icms                  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 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 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_row_bem                      as Rowid
    field tta_cdn_fornecedor               as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor" column-label "Fornecedor"
    field tta_cod_docto_entr               as logical format "Sim/Não" initial yescharacter format "x(8)" label "Docto Entrada" column-label "Docto Entrada"
    field tta_qtdcod_bem_pat_represen ser_nota                 as decimal character format ">>>>>>>>9" initial 1 label "Quantidade Bens Representadosx(5)" label "S‚rie Nota" column-label "Bem RepresenS‚rie Nota"
    field tta_num_item_cdndocto_fornecedor entr               as Integer  as integer format ">>>,>>>,>>9" initial 0 label "FornecedorNumero Item" column-label "FornecedorNum Item"
    field tta_cod_doctonatur_entr   operac             as character format "x(86)" label "Docto EntradaNatureza Opera‡Æo" column-label "Docto EntradaNatureza Opera‡Æo"
    field tta_qtd_coditem_serdocto_nota entr                 as character  as decimal format "x(5)" label "Série Nota>>>>>>>>9" initial 0 label "Qtde Item Docto" column-label "Série NotaQtde Item Docto"
    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 index tt_id                            is primary unique
          ttv_row_bem                      ascending
          tta_cdn_fornecedor               as integer format ">>,>>>,>>9" initial 0 label "Identificação Bem" column-label "Identificação Bem"ascending
    field       tta_descod_narrat_bem_pat docto_entr               as character format "x(2000)" label "Narrativa Bem" column-label "Narrativa Bem"
    field tta_log_bem_imptdo ascending
          tta_cod_ser_nota                 as logical format "Sim/Não" initial no label "Bem Importado" column-label "Bem Importado"
    field tta_log_cr_pis   ascending
          tta_num_item_docto_entr          ascending
          tta_cod_natur_operac                 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"ascending
    .

/* Esta temp-table (tt_criacao_bem_pat_val_resid_1) 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_num_parc_pis_cofins row_bem              as integer format "999" initial 0 label "Nro Parcelas" column-label "Nro Parcelas"         as Rowid
    field tta_valcod_crtip_pis calc                   as decimal character format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Cred PIS/PASEPx(7)" label "Tipo C lculo" column-label "Vl Cred PIS/PASEPTipo C lculo"
    field tta_valcod_crcenar_cofins ctbl                as decimal format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Crédito COFINSas character format "x(8)" label "Cen rio Cont bil" column-label "Credito COFINSCen rio Cont bil"
    field tta_valcod_basefinalid_pis     econ             as decimal character format ">>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Base PIS/PASEPx(10)" label "Finalidade" column-label "Vl Base PIS/PASEPFinalidade"
    field tta_val_baseresid_cofins min                as decimal format "->>>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Base COFINSResidual M¡nimo" column-label "Base COFINSResidual"
    field ttv_log_cr_csll index tt_id                  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"
    field tta_dat_calc_pat        is primary unique
          ttv_row_bem                     as date format "99/99/9999" initial today label "Data Cálculo" column-label "Data Cálculo" ascending
    field       tta_cb3cod_identtip_visual calc                 as Character format "x(20)" initial ? label "Número Plaqueta" column-label "Número Plaqueta"
    field ascending
          tta_cod_estado_fisic_bem_pat     as character format "x(8)" label "Estado Físico" column-label "Estado Físico"
    field cenar_ctbl               ascending
          tta_cod_especfinalid_bem econ             ascending
    .

/* Esta temp-table (tt_criacao_bem_pat_img_1) 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_row_bem    as character format "x(6)" label "Espécie Bem Patrimonial" column-label "Espécie"
    field tta_cod_marca                    as character format "x(6)" label "Marca" column-label "Marca"Rowid
    field tta_coddes_modelo imagem                   as character format "x(840)" label "ModeloDescri‡Æo" column-label "ModeloDescri‡Æo"
    field tta_dat_avaliac_apol_seguro img                      as date format "99/99/9999" initial today ? label "Data Avaliação ApolImagem" column-label "Data Avaliação ApolImagem"
    field tta_val_avaliac_apol_seguro log_princ                    as decimal logical format "->>,>>>,>>>,>>9.99" decimals 2 initial 0 label "Valor Avaliação ApolSim/NÆo" initial no label "Principal" column-label "Valor Avaliação ApolPrincipal"
    field tta_codnom_licencarq_uso img                 as  as character format "x(12200)" label "Licença UsoArquivo Imagem" column-label "Licen UsoArquivo"
    field tta_cod_especif_tec des_obs                      as character format "x(255)" label "Observa‡Æo" column-label "Observa‡Æ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 "x(8)" label "Especificação Técnica" column-label "Especificação Técnica"
    field tta_cod_unid_arrendador organ_ext               as character format "x(65)" label "ArrendadorUnid Organ Externa" column-label "ArrendadorUnid Organ Externa"
    field tta_cod_contratcta_leas pat                 as  as character format "x(1218)" label "Contrato LeasingConta Patrimonial" column-label "Contr LeasConta Patrimonial"
    field tta_num_codbem_localiz pat                  as character integer format "x(12)" >>>>>>>>9" initial 0 label "LocalizaçãoBem Patrimonial" column-label "LocalizaçãoBem"
    field tta_cod_imagem num_seq_bem_pat                   as character  as integer format "x(30)" >>>>9" initial 0 label "ImagemSequŒˆncia Bem" column-label "ImagemSequŒˆncia"
    field ttvtta_rec_id                              as recid
    .

/* esta temp-table conterá os itens do documento de entrada a serem vinculados aos bens. Não é obrigatório criar registros nesta temp-table */ 

def temp-table tt_criacao_bem_pat_item_api no-undo
    field ttv_rec_bem des_bem_pat                          as recid format ">>>>>>9 as character format "x(40)" label "DescriŒ‡ÔÇÖo Bem Pat" column-label "DescriŒ‡ÔÇÖo Bem Pat"
    field tta_dat_aquis_cdnbem_fornecedor pat               as Integer format ">>>,>>>,>>9" initial 0 label "Fornecedor as date format "99/99/9999" initial today label "Data AquisiŒ‡ÔÇÖo" column-label "FornecedorDat Aquis"
    field tta_cod_doctofinalid_econ_entr ext               as character format "x(8)" label "Docto EntradaFinalid Econ Externa" column-label "Docto EntradaFinalidade Externa"
    field ttattv_coddes_ser_nota mensagem                 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_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_rec_bem                      ascending
          tta_cdn_fornecedor               ascending
          tta_cod_docto_entr               ascending
          tta_cod_ser_nota                 ascending
          tta_num_item_docto_entr          ascending
    .

/* esta temp-table conterá os valores residuais dos bens a serem criados no sistema. Não é obrigatório criar registros nesta temp-table */

def temp-table tt_criacao_bem_pat_val_resid no-undo
    field ttv_rec_bem                      as recid format ">>>>>>9"
    field tta_cod_tip_calc                 as character format "x(7)" label "Tipo Cálculo" column-label "Tipo Cálculo"
    field tta_cod_cenar_ctbl               as character format "x(8)" label "Cenário Contábil" column-label "Cená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ínimo" column-label "Residual"
    index tt_id                            is primary unique
          ttv_rec_bem                      ascending
          tta_cod_tip_calc                 ascending
          tta_cod_cenar_ctbl               ascending
          tta_cod_finalid_econ             ascending
    .

...

"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_criacao_bem_pat_api_10.ttv_num_parc_pis_cofins      = 0
       tt_criacao_bem_pat_api_10.tta_val_cr_pis               = 0
       tt_criacao_bem_pat_api_10.tta_val_cr_cofins            = 0
       tt_criacao_bem_pat_api_10.tta_cod_docto_entr           = "3232"
       tt_criacao_bem_pat_api_10.tta_cod_ser_nota             = 'u'
       tt_criacao_bem_pat_api_10.tta_num_item_docto_entr      = 20
       tt_criacao_bem_pat_api_10 .tta_dat_calc_pat            = 07/01/2023
       tt_criacao_bem_pat_api_10.tta_cb3_ident_visual         = '12345678'
       tt_criacao_bem_pat_api_10.tta_cod_estado_fisic_bem_pat = "ATIVO"
       tt_criacao_bem_pat_api_10.tta_cod_espec_bem            = '004' 
       tt_criacao_bem_pat_api_10.tta_cod_marca                = 'COMPAQ'
       tt_criacao_bem_pat_api_10.tta_cod_modelo               = "LS1"
       tt

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)".

 
        create tt_criacao_bem_pat_api_7.10.tta_dat_avaliac_apol_seguro  = 07/01/2023
        assign tt tt_criacao_bem_pat_api_710.tta_codval_unidavaliac_organapol_Ext     seguro  = "10"
        50000
       tt_criacao_bem_pat_api_710.tta_cod_Ctalicenc_pat uso              = "034"
    = '1'
           tt_criacao_bem_pat_api_710.tta_numcod_bemespecif_pat     tec          = 220815'1'
               tt_criacao_bem_pat_api_710.tta_num_seq_bem_pat cod_arrendador           = 1'10'
               tt_criacao_bem_pat_api_710.tta_descod_bem_pat       contrat_leas         = "Teste API - " + STRING(TODAY) + ' # ' + STRING(TIME,"hh:mm")'120220'
               tt_criacao_bem_pat_api_710.tta_dat_aquis_bem_pat cod_localiz              = TODAY 'VIDRO- 31
        01'
       tt_criacao_bem_pat_api_710.tta_cod_plano_ccusto imagem         = "Alfa"
        = ''
       tt_criacao_bem_pat_api_710.ttattv_codval_ccustoexc_ext icms             = "31400"0
               tt_criacao_bem_pat_api_710.ttattv_codrow_estab_ext id             = "1"
               tt= ROWID(tt_criacao_bem_pat_api_7.tta_cod_unid_negoc_ext       = "999"
               tt10).

CREATE tt_criacao_bem_pat_item_api_2.
ASSIGN tt_criacao_bem_pat_item_api_72.ttattv_cod_finalid_econ_ext     = "0"
row_bem                tt= tt_criacao_bem_pat_api_710.ttv_val_aquis_bem_pat        = 10000
  row_id
             tt_criacao_bem_pat_item_api_72.ttvtta_log_erro           cdn_fornecedor      = no13 
               tt_criacao_bem_pat_item_api_72.tta_qtdcod_Bem_pat_represen docto_entr      = 1"2206231"
               tt_criacao_bem_pat_item_api_72.tta_cod_cdnser_fornecedor   nota        = "1"
               tt_criacao_bem_pat_item_api_72.tta_num_iditem_bem_pat           = 0
      docto_entr = 20
         tt_criacao_bem_pat_item_api_72.tta_descod_narratnatur_Bem_pat operac       = "111A90"
               tt_criacao_bem_pat_item_api_72.tta_logqtd_item_cr_cofins            = NO
               ttdocto_entr = 1.

CREATE tt_criacao_bem_pat_val_apiresid_7.tta_log_cr_pis 1.
ASSIGN tt_criacao_bem_pat_val_resid_1.ttv_row_bem               = NO
               tt= ROWID(tt_criacao_bem_pat_api_7.ttv_num_parc_pis_cofins      = 0
        10)
       tt_criacao_bem_pat_val_apiresid_71.tta_valcod_crtip_pis calc     = "DP"           = 0
          
       tt_criacao_bem_pat_val_apiresid_71.tta_valcod_crcenar_cofins ctbl            = 0
      = "Fiscal"
         tt_criacao_bem_pat_apival_resid_71.tta_cod_docto_entr           finalid_econ = "3232Corrente"
               tt_criacao_bem_pat_val_apiresid_71.tta_codval_ser_nota         resid_min    = 'u'
               tt5000.

CREATE tt_criacao_bem_pat_val_apiresid_7.tta_num_item_docto_entr      = 20
              1.
ASSIGN tt_criacao_bem_pat_val_resid_1.ttv_row_bem          = ROWID(tt_criacao_bem_pat_api_10)
       tt_criacao_bem_pat_apival_resid_71.tta_datcod_calc_pat         tip_calc     = TODAY - 15
        "DP"
       tt_criacao_bem_pat_val_apiresid_71.tta_cb3cod_ident_visual         = '12345678'
      cenar_ctbl   = "Fiscal"
         tt_criacao_bem_pat_val_apiresid_71.tta_cod_estado_fisic_bem_pat finalid_econ = "ATIVOFiscal"
               tt_criacao_bem_pat_apival_resid_71.tta_codval_especresid_bem min            = = 4000.

CREATE tt_criacao_bem_pat_img_1.
ASSIGN tt '004' 
               tt_criacao_bem_pat_apiimg_71.ttattv_cod_marca           row_bem      = 'COMPAQ'
               tt= ROWID(tt_criacao_bem_pat_api_7.tta_cod_modelo               = "LS1"10)
               tt_criacao_bem_pat_apiimg_71.tta_dat_avaliac_apol_seguro  = TODAY - 10des_imagem  = "Imagem do Bem Teste API - Numero 1 com observacao"
               tt_criacao_bem_pat_apiimg_71.tta_val_avaliac_apol_seguro  = 5000
        dat_img     = TODAY
       tt_criacao_bem_pat_apiimg_71.tta_cod_licenc_uso           = '1'
      log_princ   = yes
         tt_criacao_bem_pat_apiimg_71.tta_codnom_especif_tec          = '1'
        arq_img = "C:\Users\jaqueline\Downloads\bem_patrimonial_imagem_teste.jpg"
       tt_criacao_bem_pat_apiimg_71.tta_coddes_arrendador   obs         = '10'
               tt= "Observacao da imagem carregada via API".

CREATE tt_criacao_bem_pat_img_1.
ASSIGN tt_criacao_bem_pat_apiimg_71.ttattv_cod_contrat_leas   row_bem       = '120220'= ROWID(tt_criacao_bem_pat_api_10)
               tt_criacao_bem_pat_apiimg_71.tta_coddes_localiz              = 'VIDRO-01'
              imagem  = "Imagem do Bem Teste API - Numero 2 sem observacao"
       tt_criacao_bem_pat_apiimg_71.tta_coddat_imagem     img           = '0.30.600'
        = TODAY
       tt_criacao_bem_pat_apiimg_71.ttvtta_reclog_id princ   = no
                = RECID(tt tt_criacao_bem_pat_apiimg_7).1.tta_nom_arq_img = "C:\Users\jaqueline\Downloads\bem_patrimonial_imagem_sem_obesrvacao.jpg".

CREATE         CREATE tt_criacao_bem_pat_item_api.
        ASSIGN tt_criacao_bem_pat_itemimg_api.ttv_rec_bem             = 1.
ASSIGN tt_criacao_bem_pat_apiimg_71.ttv_recrow_id
bem                tt= ROWID(tt_criacao_bem_pat_item_api.tta_cdn_fornecedor      = 1 _10)
               tt_criacao_bem_pat_itemimg_api1.tta_coddes_docto_entr imagem      = "3232Imagem do Bem Teste API - Numero 3 sem data e sem observacao"
               tt_criacao_bem_pat_itemimg_api1.tta_cod_ser_nota        = "u"log_princ   = no
               tt_criacao_bem_pat_itemimg_api1.tta_numnom_itemarq_docto_entr = 20
               tt_criacao_bem_pat_item_api.tta_qtd_item_docto_entr = 1.
        
        
        run img = "C:\Users\jaqueline\Downloads\nota_fiscal_bem_patrimonial.jpg".

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 NO /*contabiliza*/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:
   if    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.
            end.

   end.

   else disp v_des_mensagem   end.
   message "NOK".
end.

delete object DELETE OBJECT v_hdl_program.
assign ASSIGN v_hdl_program = ?.