LRE000 — Layout LRE000
Visão Geral
Layout de impressão da família LRE (Romaneio). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.
Descrição
Consulta baseada em ORDEMSERVICO, com junção em EMPRESA, VEICULO, MODELOVEICULO, filtrada por CD_EMPRESA, NR_ORDEMSERVICO.
Chamada
ExecLayout(Connection, [
// 0 - Nome do Layout da Nota Fiscal
// 1 - Cod Empresa
// 2 - Nr Lancamento
// 3 - Tp Nota
// 4 - Cod Serie
// 5 - Path Servidor
// 6 - Visualiza -> V ou Imprime -> I
// 7 - Impressora do Parametro
// 8 - Layout de origem
]);
SQL Base
sqlDados
SELECT E.NM_EMPRESA, OS.NR_ORDEMSERVICO, OS.DT_EMISSAO, OS.NR_ORDEMSERVICO, OS.NR_PLACA, {#10}OS.CD_VENDEDOR, OS.NR_KILOMETRAGEM, COALESCE(MOV.DS_MODELOVEICULO, '') DS_MODELO {#10}
FROM ORDEMSERVICO OS {#10}
LEFT JOIN EMPRESA E ON(E.CD_EMPRESA = OS.CD_EMPRESA) {#10}
LEFT JOIN VEICULO V ON (V.NR_PLACA = OS.NR_PLACA) {#10}
LEFT JOIN MODELOVEICULO MOV ON (MOV.CD_MARCAVEICULO = V.CD_MARCAVEICULO {#10}
AND MOV.CD_MODELOVEICULO = V.CD_MODELOVEICULO) {#10}
WHERE OS.CD_EMPRESA = {IntToStr(sessao.empresa.cd_Empresa) +#10}AND OS.NR_ORDEMSERVICO = {Parametros[2]}
sqlServicos
SELECT SI.NR_ORDEMSERVICO, {#10}SI.CD_ITEM, SUBSTRING(COALESCE(SI.DS_ITEM, I.DS_ITEM)
FROM 1 FOR 50)DS_ITEM,{#10}SI.CD_ITEM ||' - '|| SUBSTRING(COALESCE(SI.DS_ITEM, I.DS_ITEM)
FROM 1 FOR 50) CD_DSITEM,{#10}I.PS_LIQUIDO, {#10}CASE TC.TP_UNIDADE WHEN 'P' THEN (SI.PS_SERVICOITEM - COALESCE(SI.PS_IMPRESSA,0)) {#10} WHEN 'Q' THEN (SI.QT_SERVICOITEM - COALESCE(SI.QT_IMPRESSA,0)) END QTITEM, {#10}SI.VL_UNITARIO,SI.DT_REGISTRO, {#10}PM.NM_PESSOA NM_MECANICO, {#10}SI.CD_VENDEDOR, PV.NM_PESSOA NM_VENDEDOR, {#10}COALESCE(SI.QT_SERVICOITEM, 1) QT_SERV_INCLUSO {#10}
FROM SERVICOITEM SI {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = SI.CD_ITEM) {#10}
LEFT JOIN VENDEDOR V ON (V.CD_VENDEDOR = SI.CD_VENDEDOR) {#10}
LEFT JOIN PESSOA PV ON (PV.CD_PESSOA = V.CD_VENDEDOR) {#10}
LEFT JOIN PESSOA PM ON (PM.CD_PESSOA = SI.CD_MECANICO) {#10}
INNER JOIN TIPOCALCULO TC ON (TC.CD_TIPOCALCULO = I.CD_TIPOCALCULO) {#10}
WHERE SI.CD_EMPRESA = {IntToStr(sessao.empresa.cd_Empresa) +#10}--AND SI.ST_IMPRESSAO = 'N' {#10}AND (COALESCE(SI.QT_IMPRESSA,0) < COALESCE(SI.QT_SERVICOITEM,0) {#10}
OR COALESCE(SI.PS_IMPRESSA,0) < COALESCE(SI.PS_SERVICOITEM,0) ) {#10}AND SI.NR_ORDEMSERVICO = {Parametros[2]}
Consulta #1
SELECT PO.TP_REQESTOQUE {#10}
FROM PARMOFICINA PO {#10}
WHERE PO.CD_EMPRESA = {IntToStr(sessao.empresa.cd_Empresa)}
Consulta #2
SELECT I.DS_PORTADOS, I.CD_IMPRESSORA
FROM PARMUSUARIO U
INNER JOIN IMPRESSORA I ON (I.CD_IMPRESSORA = U.CD_IMPPEDIDO)
WHERE CD_EMPRESA = {IntToStr(sessao.empresa.cd_Empresa)}
AND CD_USUARIO = {Nulo(sessao.usuario.cd_Usuario,}S{)}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
EMPRESA | referenciada nas queries do layout |
IMPRESSORA | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
MODELOVEICULO | referenciada nas queries do layout |
ORDEMSERVICO | referenciada nas queries do layout |
PARMOFICINA | referenciada nas queries do layout |
PARMUSUARIO | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
SERVICOITEM | referenciada nas queries do layout |
TIPOCALCULO | referenciada nas queries do layout |
VEICULO | referenciada nas queries do layout |
VENDEDOR | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LRE000/ULRE000.pas - DFM:
source/LRE000/ULRE000.dfm - Package:
source/LRE000/LRE000.dpk