Definir Numero nStatusProcesso; Definir alfa aMensagemProcesso; Definir Alfa aResponse_JsonOutput; Definir Alfa aSql; Definir Alfa aAspaDupla; Definir Numero nParam_CodEmp; Definir Alfa aParam_CodOri; Definir Alfa aParam_CodFam; Definir Alfa aParam_CodPro; Definir Alfa aParam_CodDer; Definir Alfa aParam_CodRef; Definir Data dParam_DatAlt; Definir Alfa aParam_DatAlt; Definir Alfa aParam_CodEmp; Definir Interno.com.br.Soelx.Util.genericConsult WsgenericConsult; Definir Funcao IniciaProcessamento(); Definir Funcao MontaResposta(); Definir Funcao BuscaDados(); aAspaDupla = "\""; IniciaProcessamento(); @------------------------------------------------------------------------------@ @----Função para iniciar a distribuição do processamento das informações-------@ @------------------------------------------------------------------------------@ Funcao IniciaProcessamento();{ aResponse_JsonOutput = ""; nStatusProcesso = 1; aMensagemProcesso ="Processamento realizado com sucesso."; nParam_CodEmp=ListarProdutos.CodEmp; aParam_CodOri=ListarProdutos.CodOri; aParam_CodFam=ListarProdutos.CodFam; aParam_CodPro=ListarProdutos.CodPro; aParam_CodDer=ListarProdutos.CodDer; aParam_CodRef=ListarProdutos.CodRef; dParam_DatAlt=ListarProdutos.DatAlt; nParam_OffSet=ListarProdutos.OffSet; nParam_Limit =ListarProdutos.Limit; Se(nParam_CodEmp=0){ nParam_CodEmp = 1; } Se(nParam_Limit=0){ nParam_Limit = 99999999; } aParam_DatAlt = ""; Se(dParam_DatAlt<>0){ ConverteMascara(3,dParam_DatAlt,aParam_DatAlt,"dd/mm/yyyy"); }senao { LimpaEspacos(aParam_CodRef); Se(aParam_CodRef=""){ dParam_DatAlt = DatSis; ConverteMascara(3,dParam_DatAlt,aParam_DatAlt,"dd/mm/yyyy"); } } LimpaEspacos(aParam_CodPro); LimpaEspacos(aParam_CodDer); LimpaEspacos(aParam_CodRef); Se((aParam_CodPro<>"") ou (aParam_CodDer<>"") ou (aParam_CodRef<>"")){ nParam_OffSet = 0; MontaData(01,01,2010,dParam_DatAlt); ConverteMascara(3,dParam_DatAlt,aParam_DatAlt,"dd/mm/yyyy"); } Se(nStatusProcesso=1){ BuscaDados(); } MontaResposta(); } @--Função que devolve o resultado do processamento dos dados de entrada--------@ Funcao MontaResposta();{ Se(nStatusProcesso=1){ ListarProdutos.JsonOutput = aResponse_JsonOutput; } ListarProdutos.StatusProcesso = nStatusProcesso; ListarProdutos.MensagemProcesso = aMensagemProcesso; } Funcao BuscaDados();{ IntParaAlfa(nParam_CodEmp,aParam_CodEmp); aSql = "select \ e075pro.codemp as e075pro_codemp,\ e075pro.codpro as e075pro_codpro,\ e075pro.despro as e075pro_despro,\ e075pro.cplpro as e075pro_cplpro,\ e075pro.desnfv as e075pro_desnfv,\ e075pro.codfam as e075pro_codfam,\ e075pro.unimed as e075pro_unimed,\ e075pro.unime2 as e075pro_unime2,\ e075pro.unime3 as e075pro_unime3,\ e075pro.tippro as e075pro_tippro,\ e075pro.indreq as e075pro_indreq,\ e075pro.indcpr as e075pro_indcpr,\ e075pro.indmis as e075pro_indmis,\ e075pro.indven as e075pro_indven,\ e075pro.codori as e075pro_codori,\ e075der.codder as e075der_codder,\ e075der.desder as e075der_desder,\ e075der.descpl as e075der_descpl,\ e075der.codba2 as e075der_codbar,\ e075der.tipcn2 as e075der_tipcn2,\ e075der.vlrcn2 as e075der_vlrcn2,\ e075der.tipcn3 as e075der_tipcn3,\ e075der.vlrcn3 as e075der_vlrcn3,\ e075der.pesbru as e075der_pesbru,\ e075der.pesliq as e075der_pesliq,\ e075der.tolpes as e075der_tolpes,\ e075der.volder as e075der_volder,\ e075der.codemb as e075der_codemb,\ e075der.qtdemb as e075der_qtdemb,\ case when trim(e075der.codref) != ' ' then e075der.codref \ else e075pro.codpro || '-' || e075der.codder \ end e075der_codref \ from e075pro \ inner join e075der \ on e075der.codemp = e075pro.codemp \ and e075der.codpro = e075pro.codpro " + " where (e075pro.codemp = "+ aParam_CodEmp +" or 0=" + aParam_CodEmp + ")" + " and (e075pro.codori = '"+ aParam_CodOri +"' or '" + aParam_CodOri + "' is null)" + " and (e075pro.codfam = '"+ aParam_CodFam +"' or '" + aParam_CodFam + "' is null)" + " and (e075pro.codpro = '"+ aParam_CodPro +"' or '" + aParam_CodPro + "' is null)" + " and (e075der.codder = '"+ aParam_CodDer +"' or '" + aParam_CodDer + "' is null)" + " and (e075der.codref = '"+ aParam_CodRef +"' or '" + aParam_CodRef + "' is null)" + " and e075pro.tippro != 'S' " + " and ((e075pro.sitpro = 'A' and e075der.sitder = 'A') or ('" + aParam_CodRef +"' <> ' ')) " + " and upper(e075pro.despro) not like upper('%SERVIÇO%') " + " and upper(e075pro.despro) not like upper('%INATIVO%') " ; Se(aParam_DatAlt<>""){ aSql = aSql + " and (e075pro.datger >= to_date('" + aParam_DatAlt +"','DD/MM/YYYY') or " + " e075pro.datalt >= to_date('" + aParam_DatAlt +"','DD/MM/YYYY') OR " + " e075der.datger >= to_date('" + aParam_DatAlt +"','DD/MM/YYYY') or " + " e075der.datalt >= to_date('" + aParam_DatAlt +"','DD/MM/YYYY') ) " ; } aSql = aSql + " order by e075pro.codemp,e075pro.codpro,e075der.codder "; @Mensagem(Erro, aSql);@ WsgenericConsult.queryCompleted = aSql; WsgenericConsult.Limit = nParam_Limit; WsgenericConsult.OffSet = nParam_OffSet; WsgenericConsult.Executar(); Se(WsgenericConsult.ErroExecucao <> ""){ nStatusProcesso =0; aMensagemProcesso =WsgenericConsult.ErroExecucao; }senao { aResponse_JsonOutput = WsgenericConsult.pmJsonResponse; } }