VARIAVEL Z_AAMM = right( str(year(date()),4), 2) + strzero( month(date()) ,2) 
VARIAVEL Z_NF = 0 
VARIAVEL Z_NUMPED = 0 
VARIAVEL Z_FORN = 0 
VARIAVEL sPrtLineLen = 80
* 
VARIAVEL LST_TP = 999 
T10,10,18,60,Parametros 
T2,2,Numero da Nota Fiscal de Entrada....:,6,z_nf,9999999 
T3,2,Fornecedor da Nota Fiscal de Entrada:,3,z_forn,999 
T4,2,Numero do Pedido da Nota Fiscal.....:,6,z_numped,999999 
T5,2,Ano e Mes (AaMm) da Nota Fiscal.....:,4,z_aamm,9999 
 
COMANDO ANTES DbGoBottom() 
COMANDO DEPOIS SetAliasAaMm( Z_aamm )

ARQUIVO (wsf_fatf) wsf_fatf PFNUM
OUTROARQ (wse_mov) wse_mov_F mfnum
OUTROARQ SCCPFOR 
OUTROARQ SE_PROD SEIP_C PCOD 
VARIAVEL Z_NUMNOTAS = 0 
VARIAVEL Z_PRODS = 0 
VARIAVEL Z_UNIDS = 0 
VARIAVEL Z_TPVENDA = 0 
VARIAVEL Z_MARGEM    = 0 
VARIAVEL Z_MARKUP    = 0 
 
COMANDO ANTES DbSeek(Z_nf) 
REPITA ENQUANTO Z_NF = PFNUM 
FILTRO (z_numped=0.OR.Z_NUMPED=pfnumped) .AND. (Z_FORN=0.OR.Z_FORN=PFFOR) 
* COMANDO DURANTE z_numped    = if(z_numped=0,pfnumped,z_numped) 
* COMANDO DURANTE z_forn      = if(z_Forn=0,pffor,z_forn) 
COMANDO DURANTE Z_NUMNOTAS  = Z_NUMNOTAS + 1 
COMANDO DURANTE Z_PFFOR     = PFFOR 
COMANDO DURANTE Z_NIL       = SCCPFOR->(DBGOTO(Z_PFFOR))
COMANDO DURANTE Z_PFNUMPED  = PFNUMPED 
COMANDO DURANTE Z_PFDATACHE = PFDATACHE 
COMANDO DURANTE Z_PFVAL     = PFVAL 
COMANDO DURANTE Z_PFTOTICMS = PFTOTICMS 
COMANDO DURANTE Z_PFVALRET  = PFVALRET 
COMANDO DURANTE Z_PRCUSTO   = PFVAL - PFVALRET 
COMANDO DURANTE Z_NIL       = if(Z_NUMNOTAS>1,__Eject(),"") 
COMANDO DURANTE Z_PRODS     = 0 
COMANDO DURANTE Z_UNIDS     = 0 
COMANDO DURANTE Z_TPVENDA    = 0 
* COMANDO DURANTE DbGoBottom() 
 
D[SISTEMA]$pag [Z_NUMNOTAS 999] 
DProdutos de Nota de Entrada $ em [s_datual] as [time()] 
D[repl("-",80)] 
DNota Fiscal: [strzero(z_nf,9)]  Pedido: [strzero(z_pfnumped,6)]  Chegada: [z_pfdatache] $ Forn: ([z_pffor 999]) [sccpfor->cp_fantasi @s10] 
D[Repl("-",80)] 
DCod  Apresentacao                  Quant PrCusto PrVenda Margem  Markup  PrTotal 
D[Repl("=",80)] 
 
SUBLIST wse_mov 
 
COMANDO ANTES DbSeek(Z_Nf) 
REPITA ENQUANTO MFNUM = Z_Nf 
FILTRO MFGES="E".and.mquant>0.and.(z_nf=0.or.mfnum=z_nf).and.(z_pffor=0.or.mcodforc=z_pffor).and.(z_pfnumped=0.or.fnumped=z_pfnumped) 
COMANDO DURANTE Z_PCOD = PCOD 
COMANDO DURANTE SE_PROD->(DBSEEK(Z_PCOD)) 
COMANDO DURANTE Z_PRODS = Z_PRODS + 1 
COMANDO DURANTE Z_UNIDS = Z_UNIDS + MQUANT 
COMANDO DURANTE Z_TPVENDA = Z_TPVENDA + se_prod->Pvluvenda*Mquant 
COMANDO DURANTE Z_PCU = MVALOR/MQUANT 
COMANDO DURANTE Z_PVU = SE_PROD->PVLUVENDA 
COMANDO DURANTE Z_MARGEM = IF(Z_PVU>0, (Z_PVU-Z_PCU)/Z_PVU*100, 0) 
COMANDO DURANTE Z_MARKUP = IF(Z_PCU>0, Z_PVU/Z_PCU*100, 0) - 100 
COMANDO DURANTE Z_MCODFORC = MCODFORC 
COMANDO DURANTE SCCPFOR->(DbGoto(Z_MCODFORC)) 
 
D[PCOD 99999] [SE_PROD->PDESC] [mquant 9999] [Z_PCU 9999.99] [Z_PVU 9999.99] [Z_MARGEM 99.99]% [Z_MARKUP 999.99]% [MVALOR 9999.99][SE_PROD->PGPRECO] 
 
COMANDO DEPOIS Z_MARGEM = IF(Z_TPVENDA>0, (Z_TPVENDA-Z_PFVAL)/Z_TPVENDA*100, 0) 
COMANDO DEPOIS Z_MARKUP = IF(Z_PRCUSTO>0, Z_TPVENDA/Z_PRCUSTO*100-100, 0) 
ULTPAG[Repl("-",80)] 
ULTPAG** Prods:[z_prods 9999]   Total_da_NF:[Z_pfval 999,999.99]   Pr_Custo:[Z_PrCusto 999,999.99]   Margem_NF:[z_Margem 999.99]% 
ULTPAG** Unids:[z_unids 9999]   ICM_Retido.:[Z_pfvalRET 999,999.99]   Pr_Venda:[Z_TPVENDA 999,999.99]   Markup_NF:[z_Markup 999.99]% 
ULTPAG[Repl(".",80)] 
FIM SUBLIST 
