Árvore de páginas

Versões comparadas

Chave

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

...

ERROR: type "number" does not exist
LINE 20: vvalor NUMBER( 16 , 2 ) ;
^
********** Error **********
ERROR: type "number" does not exist
SQL state: 42704
Character: 418 MsParse não tratou o tipo Number não usado no Postgre

Produto:

Microsiga Protheus

Versões:

12.1.17

Ocorrência:

Realização de testes nas procedures dinâmicas do modulo planejamento e controle orçamentário em banco de dados PostgreSQL.

Passo a passo:

  • Foi realizado o levantamento da quantidade de procedures dinâmicas no modulo planejamento e controle orçamentário, totalizando 5

  • Em seguida através de rotina automática as Execução das funções responsáveis pela execução das pelas querys foram chamadas, e executadas processadas diretamente no banco de dados PostgreSQL versão 1.6

  • 27 procedures foram retornadas com sucesso após a chamada da função MsParse.

  • Rotina

    PCOA122

    Descrição da

    Rotina

    Função

    Descrição

    da Função

    Observação

    Postgre

    Conclusão
    CTBXATU

    PCOA122.PRW

    Rotina GenéricaCriaSP169()Cria a procedure CTB169 dinamicamenteExecutar através de uma user function e testar sintaxe direto no banco de dados.

    CallXFilial

    Função xFilial para uso dentro do corpo das procedures dinâmicas do PCO, recebe como parâmetro as strings das variáveis da procedure a serem utilizadas

    CREATE FUNCTION - Query returned successfully in

    356

    603 msec.

    CTBXSAL

    PCOA122.PRW

    Rotina GenéricaCriaSPMVT()Cria a procedure CTB169 dinamicamenteExecutar através de uma user function e testar sintaxe direto no banco de dados.

    Popula_AK2

    Chama as funções que fazem a criação e instalação de procedures que geram níveis superiores para as entidades

    CREATE FUNCTION - Query returned successfully in 103 603 msec.
    CTBA360

    PCOA122.PRW

    Atualiza os saldos compostos.CTBA360H()cria CTBA360H - Ct360Flag - Atualiza flag de slds compostosExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 156 msec.CTBA360G()Recuperar slds anteriores a data inicial do CTYExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 164 msec.CTBA360F()Recuperar slds anteriores a datainicial do CTXExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 108 msec.CTBA360E()Recuperar slds anteriores a data inicial do CTWExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 95 msec.CTBA360D()SLDANTCTV - Recuperar slds anteriores a data inicial do CTVExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 95 msec.CTBA360C()Recuperar slds anteriores a data inicial do CTUExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 88 msec.CTBA360B()Apaga Slds da tabela destino ( CTU/CTV/CTW/CTX/CTY )Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 89 msec.CTBA360A()Procedure pai - Ctb360SlCmp() - Atualiza os Saldos CompostosExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 103 msec.CallXFilial()Funcao xFilial para uso dentro do corpo das procedures dinamicasExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 93 msec.
    CTBA370.PRWRecalcula o valor dos lancamentos em moedas fortesCTBA370A()Cria a procedure de conversao de valoresExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 103 msec.
    CTBA370Proc()Cria as procedures de atualizacao Debitos do CT7,CT3,CT4,CTIExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 95 msec.CallXFilial()Funcao xFilial para uso dentro do corpo das procedures dinamicasExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 93 msec.
    CTBA810.PRWRotina de Amarração de entidades contabeisCriaProc()Monta a procedure de concatenação das entidades.Testada na rotina CTBA250Query returned successfully in 113 msec. Colocar Postgres na validação: Alltrim( Upper(TcGetDb())) $ 'MSSQL7|MSSQL|ORACLE|DB2|INFORMIX' Linha 652 Função FiltraDestino()
    CTBA810Grava()Gravação de entidadesTestada na rotina CTBA250Query returned successfully in 141 msec.
    CT2SeqIDX.PRWGravacao do campo CT2_SEQIDX para lanc. c/chave duplicada.SeqIdxProc()Procedure p/ a gravacao do campo CT2_SEQIDX ch duplicadaExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 110 msec.
    CTBM300.PRWPermitir copiar saldos analiticos ou sinteticos de uma determinada conta, cc, item ou classe de valor para umsegundo tipo de saldo informado pelo usuario.CTBM300CTI()Atualiza saldos no CQ7Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 95 msec.
    CTBM300CT4()Atualiza saldos no CQ5Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 92 msec.CTBM300CT3()Atualiza saldos no CQ3Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 96 msec.CTBM300CT7()Atualiza saldos no CT7Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 104 msec.CTBM300DOC()Gera proxima linha, doc e loteExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 83 msec.CTBM300PAI()Copia dos tipos de saldos selecionadosExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 101 msec.CallXFilial()Funcao xFilial para uso dentro do corpo das procedures dinamicasExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 93 msecCTBM300LDAY()Retorna o ultimo dia do mêsExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 84 msec.CTBM300CTC()Insercao / Atualizacao CTCExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 93 msec.
    CTBR403.PRWRazao por entidadeR403SldAnt()Cria e instala procedure que busca o Saldo anteriorExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 116 msec.
    CTBXINT.PRWRotina GenéricaCriaManad1()Cria procedure para popular a tabela temporariaExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 83 msec.
    CriaManad2()Cria procedure para popular a tabela temporariaExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 100 msec.
    CTK811.PRWPrograma de Atualizacao do CTKProcCTK811()Programa de Atualizacao do CTK.Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 94 msec.
    CTBS011.PRWEscrituração Contabil - ECD/ECFCt11PtoE()Cria Procedures de ponto de entrada ECDCHVMOVExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 95 msec.
    Ct11DtLp()Cria procedure par verifcar se a data e de apuracao de Lucros e PerdasExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 81 msec.Ct11PopCSA()Cria procedure de gravacao de movimentos no CSAExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 90 msec.Ct11PopCSB()Cria procedure de gravacao de movimentos no CSBExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 89 msec.Ct11PopCSL()Cria procedure de gravacao de movimentos na tabela CSLExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 95 msec.Ct11ProcPa()Cria procedure de gravacao de movimentos no CSBExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 93 msecCt11Filial()Funcao xFilial para uso dentro do corpo das procedures dinamicasExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 100 msec.ProcCtaRef()Cria procedure de gravacao das contas referenciaisExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 84 msec.Ct11PMF()Cria procedure de gravacao de movimentos no CSBExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 89 msec
    CT220DOC.PRWEx de rdmake para gerar linhas sempre diferentes no CT2.CT220DOC()Ex de rdmake para gerar linhas sempre diferentes no CT2.Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 94 msec.
    CTBA220.PRWAglutinação de dados. Segue o mesmo modelo do SIGACON -> Aglut mod ACt220ExecP()Copia as tabelas para empresa destinoExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 200 msec.
    Ctb220CQ7()Cria procedure p geracao de lactos de saldos inciais do CQ7Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 106 msec.Ctb220CQ5()Cria procedure p geracao de lactos de saldos inciais do CQ5Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 87 msec.Ctb220CQ3()Procedure de geracao de lactos de slds iniciais CQ3Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 155 msec.Ctb220CQ1()Cria procedure p geracao de lactos de saldos inciais do CT7Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 153 msec.Ctb220DEL()Exclui dados das tagelas de cadastros CT1/CTT/CTD/CTHExecutar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 124 msec.CTB220Alt()Ponto de entrada permite alteração de valor e hist na gravação da tabela CT2Executar através de uma user function e testar sintaxe direto no banco de dados.Query returned successfully in 91 msec.
    As procedures da rotina CTBA231 (Aglutinação de dados Configurada - Modelo B) retornaram erros mesmo após a chamada da função MsParse:
Ct231ExecP()Aglutinação dos saldos/lançamentos 

Popula_AK3

Chama as funções que fazem a criação e instalação de procedures que geram níveis superiores para as entidades

CREATE FUNCTION - Query returned successfully in 603 msec.

PCOA122.PRW

PcoCriaPai

Chama as funções que fazem a criação e instalação de procedures que geram níveis superiores para as entidades

CREATE FUNCTION - Query returned successfully in 603 msec.

PCOA122.PRW

A122LastDay

Cria procedure que retorna o último dia do mês

CREATE FUNCTION - Query returned successfully in 603 msec.

PCOA122.PRW

PCOA122B

Cria as procedures de atualização do AKT

CREATE FUNCTION - Query returned successfully in 603 msec.

PCOA122.PRW

PCOA122A

Cria procedures para atualização do AKT para os níveis superiores (sintéticas) do Cubo 

CREATE FUNCTION - Query returned successfully in 603 msec.

PCOA122.PRW

PCOA122Proc

Cria procedures pai

CREATE FUNCTION - Query returned successfully in 603 msec.

PCOA122.PRW

PCOA122_Del

Cria procedure de exclusão do AKD 

CREATE FUNCTION - Query returned successfully in 603 msec.

Rotinas que precisam ser alteradas

Rotina

Função

DESCRIÇÃO

PCOA120

Pco120Frv

Validação para o banco Postgre

PCOXDIV

AuxRevisa

Validação para o banco Postgre




  • PCOA300
RotinaFunçãoDescriçãoPostgre
PCOA300.PRWA300LastDayCria  procedure que retorna o ultimo dia do mêsCREATE FUNCTION - Query returned successfully in 603 msec.
PCOA300.PRWPCOA300BCria as procedures de atualizacao do AKTCREATE FUNCTION - Query returned successfully in 216 msec.
PCOA300.PRWPCOA300FCria procedure Exclusao de AKT do periodoCREATE FUNCTION - Query returned successfully in 109 msec.
PCOA300.PRWPCOA300ACria procedures pa atualizacao do AKT para todos os niveis do cuboCREATE FUNCTION - Query returned successfully in 237 msec.
PCOA300.PRWPCOA300ProcCria procedures PaiCREATE FUNCTION - Query returned successfully in 136 msec.
PCOA300.PRWCallXFilialFuncao xFilial para uso dentro do corpo das procedures dinamicas do PCO, recebe como parametro as strings das variaveis da procedure a serem utilizadasCREATE FUNCTION - Query returned successfully in 300 msec.



  • PCOA310



  • PCOC361



  • PCOXINC
Ct231SlInP()Gera lançamentos de saldo inicial ERROR: type "number" does not exist
LINE 17: vdebito NUMBER( 16 , 2 ) ;
^
********** Error **********
ERROR: type "number" does not exist
SQL state: 42704
Character: 345 MsParse não tratou o tipo Number não usado no Postgre
  • Na rotina CTBA105 (Lançamentos Contábeis) as procedures encontradas não foram homologadas para nenhum banco de dados sendo necessário um estudo especifico de sua funcionalidade dentro do sistema, visto que atualmente estão inutilizadas:
    Ct105LOKPr()Criação da procedure de validação da linkaok(tela de contabilização) quando tmp criado direto no banco de dadosNa função CtbIniLan() a variável lUseProc está como .F. com a seguinte observação: MANTER FALSO ATE VALIDAR AS PROCEDURES NA VERSAO 12.1.16, ou seja, a procedure não é realizada. Essas alterações foram feitas na versão 12.1.16 Changeset 451481 com a data 26/05/2017, verificar o porque da anulação das execuções das procedures.CtbPrcAmar()Criação da procedure para verificar se a contra regra esta contido na regra quando parâmetro MV_CTBAMAR = 1 (Padrão) CtbPRegra()Criação da procedure para verificar se a contra regra esta contido na regra quando parâmetro MV_CTBAMAR = 1 (Padrão)  Ct105PrGrv()Criação da procedure para gravação dos movimentos contábeis CT2/CV3 e TRW para atualização dos saldos e chamada da multithread para execução da procedure Ct105Doc()Gera próxima linha, documento e lote  Ct105105CT2()PE CT105CT2 chamada na procedure de Gravação do CT2  Ct105CTBGRV()PE CTBGRV chamada na procedure de Gravação do CT2 CtPrCT2Psq()Criação da procedure Pesquisa linha, no documento e lote CtbPFilial()Criação da procedure para verificar se a contra regra esta contido na regra quando parâmetro MV_CTBAMAR = 1 (Padrão)  Na rotina CTBA810(Rotina de Amarração de entidades contábeis) a função A810Tools() chama a procedure StrZero / Soma1 onde a mesma é retornada com erro, sendo necessária a utilização do MsParse:
    A810Tools()Cria Procedure StrZero / Soma1Usar MsParse() erro na criação da procedure






Observações:
  • Ressaltando que as procedures foram executadas diretamente no banco de dados, testando a sintaxe da query para o banco de dados PostgreSQL 1.6.
  • As querys não foram testadas executando o Protheus no sistema operacional Astra Linux.