# [F] Marca las lineas que contienen lo del papel preimpreso. # Este fichero sirve como formato de FACTURA, PRESUPUESTO, ALBARAN, PEDIDO , averia # copy forfac1.txt forabo1.txt # copy forfac1.txt forpre1.txt # copy forfac1.txt foralb1.txt # copy forfac1.txt forpec1.txt # copy forfac1.txt forave1.txt # Para proveedores la referencia es ForPep1.txt # Se traduce si esta configurado en 4-3-E VAR # Borrar o # para que tome valores por defecto de windows # cNomImp ; "Epson (Papel peque¤o)" # cPapel ; "Tamaño definido por el usuario" # nOrientacion ; 1 # nFuente ; "8.Courier New" nInterlinea ; 42 #Para que no se impriman lineas de detalle #ImprimirEstaLinea ; "IIF(LFC->IMPORTE # 0 ,.T.,.F.)" ImprimirEstaLinea ; "IIF(&DET.->KIT # 'M' ,.T.,.F.)" #Del Inicio Detalle al borde superior #Si son Distintos la cabecera reducida se imprime con CABR LONCAB ;800 LONCABR ;800 #Del Pie de la hoja al Fin del detalle era 950 LONPIE ;750 # Normalmente = margen Inferior LONPIER ;150 # Pag inic MARSUPDET ; "1 * nInterlinea" # pag 2 y sig MARSUPDET2 ; "2 * nInterlinea" # Margen Izquierdo, Puede ser mayor si se ha definido en la impresora MARIZQ;100 # Margen Inferior // Debajo pueden ir observaciones y texto publicidad # Interesa modificar si se quiere que el recuadro inferior suba o baje. MARINF;150 # ** CALCULOS ** (La variable tiene que existir en el prg ? ) cSumaSigue ; {|| Imprime("Suma y Sigue ",MarIzq+310, Ypos - nInterlinea , "9.Courier New") , Imprime( TRAN(MTOTAL, XPMAS + MA_MIMP) , MarIzq + 1780 , Ypos - nInterlinea , "12.Times New Roman","D") } cSumaAnterior ; {|| Imprime("Suma Anterior ",MarIzq+310, Ypos , "9.Courier New") , Imprime( TRAN(MTOTAL, XPMAS + MA_MIMP) , MarIzq + 1780 , Ypos , "12.Times New Roman","D") } CAB # 0->blanco 1->negro 2->azul 3->rojo 4->rosa etc #M; {|| GraSetColor( oPs, 3,0 ) } M; {|| GraSetColor( oPs, 1,0 ) } #[F] Caja de la direccion #M; {|| ImprimeCaja( MarIzq+850 , Ycab+130 , Marizq+1800 , Ycab+410 , {}, 131073 , 7 , 3 , 100 ) } C; 850 ; 130 ; 1800 ; 410; 50 #[F] #B; 0 ; 250 ; 500 ; 450 ; LOGO1.BMP #[F] # Para que imprima la palabra "copia" a partir de la segunda copia #D; IIF(NCOPIA>1,"COPIA n§"+str(ncopia,3) ,"") ; 900; 460+150 ; 12.Times New Roman D; IIF(cEMISOR#"N",VSW ,"") ; 10; 460+150 ; 18.Times New Roman D; IIF(cEMISOR#"N",VSW1 ,"") ; 10; 420+150 ; 10.Times New Roman D; IIF(cEMISOR#"N",VSDIREC,"") ; 10; 380+150 ; 10.Times New Roman D; IIF(cEMISOR#"N",VSPOBLA,"") ; 10; 340+150 ; 10.Times New Roman D; IIF(cEMISOR#"N",VSPROVI,"") ; 10; 300+150 ; 10.Times New Roman D; IIF(cEMISOR#"N",VSCIF ,"") ; 10; 260+150 ; 10.Times New Roman D; IIF(cEMISOR#"N",VSTELEF,"") ; 10; 220+150 ; 10.Times New Roman #D; "FORMATO 1" ; 0; 600 ; 7.Times New Roman #[F] D; IIF(lCab="FAC","FACTURA" ,"") ; 100; 210 ; 18.Times New Roman ;S D; IIF(lCab="ABO","FACTURA RECTIFICATIVA" ,"") ; 100; 210 ; 16.Times New Roman ;S D; IIF(lCab="ALB","ALBARAN" ,"") ; 100; 210 ; 18.Times New Roman ;S D; IIF(lCab="PEC","PEDIDO" ,"") ; 100; 210 ; 18.Times New Roman ;S D; IIF(lCab="PRE",IIF(TIPO_DOC="2","FACTURA PROFORMA","PRESUPUESTO"),"") ; 100; 210 ; 18.Times New Roman;S D; IIF(lCab="AVE","REPARACION ","") ; 100; 210 ; 18.Times New Roman;S D; "Numero" ; 100; 160 ; 11.Times New Roman;S D; IIF(lCab="FAC",ALLTRIM(str(NUM_FAC)),"") ; 240; 160 ; 12.Times New Roman D; IIF(lCab="ABO",ALLTRIM(str(NUM_ABO)),"") ; 240; 160 ; 12.Times New Roman D; IIF(lCab="ALB",ALLTRIM(str(NUM_ALB)),"") ; 240; 160 ; 12.Times New Roman D; IIF(lCab="PEC",ALLTRIM(str(NUM_PEC)),"") ; 240; 160 ; 12.Times New Roman D; IIF(lCab="PRE",ALLTRIM(str(NUM_PRE)),"") ; 240; 160 ; 12.Times New Roman D; IIF(lCab="AVE",ALLTRIM(str(NUM_AVE)),"") ; 240; 160 ; 12.Times New Roman #[F] D; "Fecha" ; 100; 110 ; 11.Times New Roman ;S D; FECHA ; 240; 110 ; 12.Times New Roman D; RASO ; 900; 150 + 5 * 40 ; 13.Times New Roman Bold D; RASO1 ; 900; 150 + 4 * 40 ; 12.Times New Roman D; CALLE ; 900; 150 + 3 * 40 ; D; CALLE1 ; 900; 150 + 2 * 40 ; D; POBLA ; 900; 150 + 1 * 40 ; D; PROVI ; 900; 150 ; #[F] D; "Cliente" ; 100; 60 ; 10.Times New Roman ;S D; "Cif" ; 440; 60 ; 10.Times New Roman ;S D; "Pagina" ;1600; 60 ; 8.Times New Roman ;S D; "TEL. "+CLI->TELEF ; 940; 60 ; 10.Times New Roman ;S D; COD_CLI ; 240; 60 ; 12.Times New Roman D; CIF ; 550; 60 ; 12.Times New Roman D; str(nPagina,3) ;1700; 60 ; 8.Times New Roman #[F] D; "Articulo" ; 10 ; 10 ; 10.Times New Roman ;S D; "Descripcion" ; 230 ; 10 ; 12.Times New Roman ;S D; "Referencia Pedido" ; 920 ; 10 ; ;S;I D; "Importe" ; 1780 ; 10 ; 12.Times New Roman ;S;D #[F] Esta en cero para que sirva de referencia L; 0 ; 1 ; 1800 ; 1 # Lateral 6 es GRA_AS_ANGLE #[F] M; {|| oFont:Configure("6.Times New Roman"),GraSetFont( oPS, oFont ) } M; {|| aAttr[ 6]:={0,1} , aOldAttr := GraSetAttrString(oPs,aAttr),GraStringAt( oPs , {MARIZQ-20,LonPie} , VSW+" NIF:"+VSCIF + " "+VSREF_REG) } M; {|| aAttr[ 6]:={1,0} , GraSetAttrString(oPs,aAttr) } CABR # Usar si es distinto LONCAB de LONCABR DET D; COD_ART ; 10 ; 8.Courier New D; DESCRIP ; 230 ; 9.Courier New D; REF_PEC ; 920 ; 9.Courier New D; TRAN( IMPORTE ,XPMAS + MA_MIMP ) ; 1780 ; 12.Times New Roman ;N;D PIE # GRA_SYM_VER 131073, Otros:1001-1010,131072-131077,65536,0 ->la trama de relleno # 4 ->color de 1 a 15 # 3 relleno y borde, 1-relleno 2-borde # 50 radio M; {|| ImprimeCajaDetalle( MarIzq , Ycab+50 , Marizq+1800 , LonPie , { 220 , 900 , 1520 }, 131073 , 4 , 2 , 50 ) } # Caja Inferior #[F] M; {|| GraBox( oPs , { MARIZQ+0 , MARINF+0 } , {MARIZQ+1800, LonPie-50}, , 50 , 50 )} # Vertical #[F] M; {|| GraLine( oPs , { MARIZQ + 920 , MARINF + 0 } , { MARIZQ + 920 , LonPie-50})} # Horizontal (de bases Imponibles, Vtos, etc #[F] M; {|| GraLine( oPs , { MARIZQ + 0 , lonPie-120 } , { MARIZQ + 920 , LonPie-120})} M; {|| GraLine( oPs , { MARIZQ + 0 , lonPie-260 } , { MARIZQ + 920 , LonPie-260})} M; {|| IIF( lCab="FAC" ,GraLine( oPs , { MARIZQ + 0 , lonPie-330 } , { MARIZQ + 920 , LonPie-330}) ,"") } M; {|| GraLine( oPs , { MARIZQ + 0 , lonPie-470 } , { MARIZQ + 920 , LonPie-470})} D;IIF(EMPTY(cTextoContados),"", "Cobro:" + cTextoContados) ; 55 ; Lonpie - 40 ; 10.Times New Roman #Desglose de Bases #[F] D; "Base Imponible" ; 270 ; Lonpie -100 ; 10.Times New Roman;S;D D; "--------- I.v.a. ---------" ; 580 ; Lonpie -100 ; 10.Times New Roman;N;D D; IIF( TOT_REC#0,"Recargo Equivalencia","") ; 620 ; Lonpie -100 ; 8.Times New Roman ;S D; IIF(TYPE("VTO1")="D","Vencimiento","") ; 320 ; Lonpie -310 ; 12.Times New Roman;S;D D; IIF(TYPE("VTO1")="D","Importe" ,"") ; 800 ; Lonpie -310 ; 12.Times New Roman;S;D D; IIF(BASE1=0,"",TRAN(BASE1 , MA_MTOT )) ; 270 ; LonPie-150 ; 10.Times New Roman;;D D; IIF(BASE2=0,"",TRAN(BASE2 , MA_MTOT )) ; 270 ; LonPie-180 ; 10.Times New Roman;;D D; IIF(BASE3=0,"",TRAN(BASE3 , MA_MTOT )) ; 270 ; LonPie-210 ; 10.Times New Roman;;D D; IIF(BASE4=0,"",TRAN(BASE4 , MA_MTOT )) ; 270 ; LonPie-240 ; 10.Times New Roman;;D D; IIF(BASE1=0,"",TRAN(POR_IVA1 , "@E ##" )+"%") ; 350 ; LonPie-150 ; 9.Times New Roman;;D D; IIF(BASE2=0,"",TRAN(POR_IVA2 , "@E ##" )+"%") ; 350 ; LonPie-180 ; 9.Times New Roman;;D D; IIF(BASE3=0,"",TRAN(POR_IVA3 , "@E ##" )+"%") ; 350 ; LonPie-210 ; 9.Times New Roman;;D D; IIF(BASE4=0,"",TRAN(POR_IVA4 , "@E ##" )+"%") ; 350 ; LonPie-240 ; 9.Times New Roman;;D D; IIF(BASE1=0,"",TRAN(IMP_IVA1 , MA_MTOT )) ; 580 ; LonPie-150 ; 9.Times New Roman;;D D; IIF(BASE2=0,"",TRAN(IMP_IVA2 , MA_MTOT )) ; 580 ; LonPie-180 ; 9.Times New Roman;;D D; IIF(BASE3=0,"",TRAN(IMP_IVA3 , MA_MTOT )) ; 580 ; LonPie-210 ; 9.Times New Roman;;D D; IIF(BASE4=0,"",TRAN(IMP_IVA4 , MA_MTOT )) ; 580 ; LonPie-240 ; 9.Times New Roman;;D D; IIF(BASE1=0 .OR. TOT_REC=0 ,"",TRAN(POR_REC1 , "@E ##" )+"%") ; 850 ; LonPie-150 ; 9.Times New Roman;;D D; IIF(BASE2=0 .OR. TOT_REC=0 ,"",TRAN(POR_REC2 , "@E ##" )+"%") ; 850 ; LonPie-180 ; 9.Times New Roman;;D D; IIF(BASE3=0 .OR. TOT_REC=0 ,"",TRAN(POR_REC3 , "@E ##" )+"%") ; 850 ; LonPie-210 ; 9.Times New Roman;;D D; IIF(BASE4=0 .OR. TOT_REC=0 ,"",TRAN(POR_REC4 , "@E ##" )+"%") ; 850 ; LonPie-240 ; 9.Times New Roman;;D D; IIF(BASE1=0 .OR. TOT_REC=0 ,"",TRAN(IMP_REC1 , MA_MTOT )) ; 920 ; LonPie-150 ; 9.Times New Roman;;D D; IIF(BASE2=0 .OR. TOT_REC=0 ,"",TRAN(IMP_REC2 , MA_MTOT )) ; 920 ; LonPie-180 ; 9.Times New Roman;;D D; IIF(BASE3=0 .OR. TOT_REC=0 ,"",TRAN(IMP_REC3 , MA_MTOT )) ; 920 ; LonPie-210 ; 9.Times New Roman;;D D; IIF(BASE4=0 .OR. TOT_REC=0 ,"",TRAN(IMP_REC4 , MA_MTOT )) ; 920 ; LonPie-240 ; 9.Times New Roman;;D D; IIF(TYPE("VTO1")="D" .AND. !EMPTY(VTO1) .AND. !EMPTY(IMP1),dtoc(VTO1),"") ; 320 ; LonPie-370 ; 12.Times New Roman;;D D; IIF(TYPE("VTO2")="D" .AND. !EMPTY(VTO2) .AND. !EMPTY(IMP2),dtoc(VTO2),"") ; 320 ; LonPie-410 ; 12.Times New Roman;;D D; IIF(TYPE("VTO3")="D" .AND. !EMPTY(VTO3) .AND. !EMPTY(IMP3),dtoc(VTO3),"") ; 320 ; LonPie-450 ; 12.Times New Roman;;D D; IIF(TYPE("IMP1")="N" .AND. !EMPTY(IMP1) , TRAN(IMP1, MA_MTOT ),"") ; 800 ; LonPie-370 ; 12.Times New Roman;;D D; IIF(TYPE("IMP2")="N" .AND. !EMPTY(IMP2) , TRAN(IMP2, MA_MTOT ),"") ; 800 ; LonPie-410 ; 12.Times New Roman;;D D; IIF(TYPE("IMP3")="N" .AND. !EMPTY(IMP3) , TRAN(IMP3, MA_MTOT ),"") ; 800 ; LonPie-450 ; 12.Times New Roman;;D # Parece mejor usar lCab que TYPE D; IIF(lCab ="FAC",F_PAGO ,"") ; 10 ; LonPie-525 ; 8.Times New Roman D; IIF(lCab ="FAC",left(Banco,20),"") ; 10 ; LonPie-525 ; 8.Times New Roman D; IIF(lCab ="FAC",C_BANCO+" "+C_DIRBAN+" "+D_C+" "+CUENTA,"") ; 450 ; LonPie-525 ; 9.Times New Roman D; IIF(lCab ="PEC","Fecha Entrega:","") ; 10 ; LonPie-525 ; 8.Times New Roman;S D; IIF(lCab ="PEC",DTOC(F_ENTREGA),"") ; 260 ; LonPie-525 ; 8.Times New Roman D; IIF(lCab ="PRE",F_PAGO ,"") ; 10 ; LonPie-525 ; 8.Times New Roman D; IIF(lCab ="AVE","Equipo:","") ; 10 ; LonPie-525 ; 8.Times New Roman;S D; IIF(lCab ="AVE", EQUIPO ,"") ; 260 ; LonPie-525 ; 8.Times New Roman # Creo que estos campos es mejor que no los escriba la imprenta D; "Sumas" ; 1000 ; Lonpie -100 ; 12.Times New Roman;S D; IIF(TOT_DPP=0,"","Dto.Pronto Pago") ; 1000 ; Lonpie -150 ; 12.Times New Roman;S D; IIF(TOT_DPP=0,"",tran(por_dpp,"##.##")) ; 1340 ; Lonpie -150 ; 12.Times New Roman D; "Base Imponible" ; 1000 ; Lonpie -200 ; 12.Times New Roman;S D; "Iva" ; 1000 ; Lonpie -250 ; 12.Times New Roman;S D; IIF( TOT_REC#0,"Recargo Equivalencia","") ; 1000 ; Lonpie -300 ; 12.Times New Roman;S D; IIF( TOT_RET#0,"Retencion","") ; 1000 ; Lonpie -350 ; 12.Times New Roman;S D; IIF( TOT_RET#0,tran(por_ret,"##.##"),"") ; 1340 ; Lonpie -350 ; 12.Times New Roman D; IIF( TOT_FIN#0,"Recargo Financiero","") ; 1000 ; Lonpie -400 ; 12.Times New Roman;S D; IIF( TOT_FIN#0,tran(por_fin,"##.##"),"") ; 1340 ; Lonpie -400 ; 12.Times New Roman D; "TOTAL" ; 1000 ; Lonpie -480 ; 13.Times New Roman;S D; MONEDA ; 1300 ; Lonpie -480 ; 13.Times New Roman # ¨Como se imprimen los euros? Poniendo SETCHARSET TO ANSI # D; "€" ; 1300 ; Lonpie -480 ; 13.Times New Roman;S D; TRAN(TOT_LIN1+TOT_LIN2+TOT_LIN3+TOT_LIN4 , MA_MTOT ) ; 1780; LonPie - 100 ; 12.Times New Roman;;D D; IIF (TOT_DPP =0,"",TRAN(TOT_DPP , MA_MTOT )) ; 1780; LonPie - 150 ; 12.Times New Roman;;D D; TRAN(TOT_BAS , MA_MTOT ) ; 1780; LonPie - 200 ; 12.Times New Roman;;D D; TRAN(TOT_IVA , MA_MTOT ) ; 1780; LonPie - 250 ; 12.Times New Roman;;D D; IIF( TOT_REC#0,TRAN(TOT_REC, MA_MTOT ),'') ; 1780; LonPie - 300 ; 12.Times New Roman;;D D; IIF(TYPE("TOT_RET")="N" .AND. TOT_RET#0,TRAN(TOT_RET , MA_MTOT ),"") ; 1780; LonPie - 350 ; 12.Times New Roman;;D D; IIF (TOT_FIN =0,"",TRAN(TOT_FIN , MA_MTOT )) ; 1780; LonPie - 400 ; 12.Times New Roman;;D D; IIF(lCab="FAC" , TRAN(TOT_FAC+TOT_FIN-TOT_RET, MA_MTOT ),"") ; 1780; LonPie - 480 ; 12.Times New Roman Bold;;D D; IIF(lCab="ABO" , TRAN(TOT_ABO+TOT_FIN-TOT_RET, MA_MTOT ),"") ; 1780; LonPie - 480 ; 12.Times New Roman Bold;;D D; IIF(lCab="ALB" , TRAN(TOT_ALB, MA_MTOT ),"") ; 1780; LonPie - 480 ; 12.Times New Roman Bold;;D D; IIF(lCab="PEC" , TRAN(TOT_PEC, MA_MTOT ),"") ; 1780; LonPie - 480 ; 12.Times New Roman Bold;;D D; IIF(lCab="PRE" , TRAN(TOT_PRE, MA_MTOT ),"") ; 1780; LonPie - 480 ; 12.Times New Roman Bold;;D D; IIF(lCab="AVE" , TRAN(TOT_AVE, MA_MTOT ),"") ; 1780; LonPie - 480 ; 12.Times New Roman Bold;;D # Linea de Publicidad, excepto Abonos D; IIF( lCab="ABO" , "Factura Rectificada: " + cAbona_A , VSTEX1) ; 10; Marinf - 40 ; 10.Times New Roman Bold D; IIF( lCab="ABO" , "Motivo: " +motivo , VSTEX2) ; 10; MarInf - 80 ; 10.Times New Roman Bold PIER # Copiar de PIE y cambiar LonPie por LonPieR M; {|| ImprimeCajaDetalle( MarIzq , Ycab+50 , Marizq+1800 , LonPieR , { 220 , 900 , 1520 }, 131073 , 4 , 2 , 50 ) } FIN # Macro para imprimir un BMP # M; {|| ImprimeBmp(0 , 2050, 500 , 2450 , IIF(''=EMP,'J:\XAF5\FREIXAS.BMP','J:\XAF5\GOIK1.BMP' ) ) }