Árvore de páginas

Base Oracle - Correção do erro apresentado na rotina Cons. Zero Vendas JD (OFINJD39)

Linha de Produto:

Microsiga Protheus

Versões:12.1.7 / 12.1.14 / 12.1.16 / 12.1.17

Segmento:

Varejo

Módulo:

Auto-Peças (SIGAPEC)

Função:

Cons. Zero Vendas JD (OFINJD39)

Situação:

Ao acessar a rotina Cons. Zero Vendas JD (OFINJD39) é apresentado o erro:


Error : 923 - ORA-00923: FROM keyword not found where expected


( From tOracleConnection::GetQueryFile )


Thread ID [27922] User [anaoliveira] IO [459] Tables [19] MaxTables [19] Comment [OFINJD39 - TCPIP - ThreadID(13072)] Status [] SP [] Traced [No] SQLReplay [No] InTran [No] DBEnv [ORACLE/Protheus] DBThread [(SID 629,42349,1)] Started [05/01/2018 08:54:06] LastIO [05/01/2018 08:54:51] IP [192.168.1.206:1556] RCV [10499] SND [21804] TCBuild [20170202-20170904]


SELECT *, (SELECT MAX(SD1D.D1_DTDIGIT) FROM SD1010 SD1D JOIN SF4010 SF4D ON SF4D.F4_FILIAL = '0101 ' AND SF4D.F4_CODIGO = SD1D.D1_TES AND SF4D.F4_OPEMOV IN ('01', '03') AND SF4D.D_E_L_E_T_ = ' ' WHERE SD1D.D1_FILIAL = '010101' AND SD1D.D1_COD = PRODUT AND SD1D.D_E_L_E_T_ = ' ') ULTENT from ( SELECT * FROM ( SELECT *, CASE WHEN DT_BZ = ' ' OR PE_CALC < DT_BZ THEN PE_CALC ELSE DT_BZ END as PE, CASE WHEN ULTVDA is null or ULTVDA = ' ' THEN DT_BZ_UVDA ELSE ULTVDA END as UVDA from ( SELECT *, CASE WHEN DT_B9 < DT_D1 THEN DT_B9 ELSE DT_D1 END as PE_CALC, CM*QUANT as TOTAL FROM ( SELECT ALMOXE AS ALMOXARIFE, PRODUT, FILIAL, CM, QUANT, DATAEX, ( SELECT MAX(SD2.D2_EMISSAO) FROM SD2010 SD2 JOIN SF4010 SF4 ON SF4.F4_FILIAL = '0101 ' AND D2_EMISSAO <= '20171231' AND SF4.F4_CODIGO = SD2.D2_TES AND SF4.F4_OPEMOV = '05' AND SF4.D_E_L_E_T_ = ' ' WHERE SD2.D2_COD = PRODUT AND SD2.D2_FILIAL = '010101' AND SD2.D_E_L_E_T_ = ' ' ) AS ULTVDA, ( SELECT MIN(SD1.D1_DTDIGIT) FROM SD1010 SD1 JOIN SF4010 SF4 ON SF4.F4_FILIAL = '0101 ' AND D1_DTDIGIT <= '20171231' AND SF4.F4_CODIGO = SD1.D1_TES AND SF4.F4_OPEMOV IN ('01', '03') AND SF4.D_E_L_E_T_ = ' ' WHERE SD1.D1_COD = PRODUT AND SD1.D1_FILIAL = '010101' AND SD1.D_E_L_E_T_ = ' ' ) AS DT_D1, ( SELECT MIN(B9_DATA) FROM SB9010 SB9 WHERE SB9.B9_FILIAL = CACHE.FILIAL AND B9_COD = PRODUT AND SB9.B9_DATA <> ' ' AND B9_QINI > 0 AND SB9.D_E_L_E_T_ = ' ' ) as DT_B9, (SELECT MIN(BZ_PRIENT) FROM SBZ010 SBZ WHERE on DMS_SQLHELPER:GETSELECT(VEICLSAS.PRW) 20/12/2017 13:31:05 line : 255


Solução:

Alterada a rotina Cons. Zero Vendas JD (OFINJD39) para correção da não-conformidade apresentada quando utilizado banco de dados Oracle.

Endereço(s) do(s) Pacote(s):

12.1.16: https://goo.gl/o2EDqS ; 12.1.7: https://goo.gl/JmZxP7 ; 12.1.14: https://goo.gl/3uAwyD ; 12.1.17: https://goo.gl/cQXeeS