Para Luis Ponce

Para Luis Ponce

Postby FranciscoA » Sun Jan 24, 2016 3:22 pm

Saludos, Luis.
Podrias enviarme el driver que mencionas en este post?
viewtopic.php?f=6&t=23795&hilit=tm+u220+windows+7&sid=ab87a1084da205baba6ae2a1c38cc4e4#p128228

Llevo dos dias intentando hacer funcionar esta impresor EPSON TM-U220PD MODEL M188D, en Windows 7.

De no ser posible, alguien mas lo tiene y quiere enviarlo?

f.alegria.p@gmail.com

Gracias de antemano

EDITADO---------------------
He bajado los drives APD_412E.zip pero no funcionan.
Last edited by FranciscoA on Mon Jan 25, 2016 1:45 pm, edited 1 time in total.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby AngelSalom » Sun Jan 24, 2016 6:15 pm

Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
User avatar
AngelSalom
 
Posts: 727
Joined: Fri Oct 07, 2005 7:38 am
Location: Benicarló (Castellón ) - España

Re: Para Luis Ponce

Postby joseluisysturiz » Sun Jan 24, 2016 6:58 pm

Francisco, te envio a tus correos el driver que use hace años, espero te pueda servir, saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Para Luis Ponce

Postby FranciscoA » Sun Jan 24, 2016 10:19 pm

Angel, Jose Luis. Gracias por contestas.

Angel ya he revisado esa direccion y bajé algunos que voy a probar. Gracias.

José Luis, gracias por tu envío. Lo espero.

Quiero comentarles que la única forma que he encontrado para hacer funcionar esta EPSON TM-U220PD M188D, es instalando Generic Text .
Sin embargo, ahora tengo los siguientes inconvenientes, es la primera vez que uso estas impresoras, a ver si pueden ayudarme a solucionarlos.

1- Como hacer para que al finalizar de imprimir el texto, no avance tantas lineas?
2- He probado muchos de los códigos mostrados aqui en el foro para el corte de papel, sin resultados. Cómo hacer para que haga el corte automático?

Repito: la impresora es EPSON TM-U220PD M188D, pero he instalando una Generic Text para que pueda imprimir.

Quizás los drivers que me enviará Jose Luis funciones, pero "por si las moscas" acudo a los que ya han tenido experiencia con este modelo de impresora.

Muchas gracias.
Last edited by FranciscoA on Mon Jan 25, 2016 1:38 am, edited 1 time in total.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby joseluisysturiz » Sun Jan 24, 2016 11:56 pm

FranciscoA wrote:Angel, Jose Luis. Gracias por contestas.

Angel ya he revisado esa direccion y bajé algunos que voy a probar. Gracias.

José Luis, gracias por tu envío. Lo espero.

Quiero comentarles que la única forma que he encontrado para hacer funcionar esta EPSON TM-U220PD M188D, es instalando Generic Text .
Sin embargo, ahora tengo los siguientes inconvenientes, es la primera vez que uso estas impresoras, a ver si pueden ayudarme a solucionarlos.

1- Como hacer para que al finalizar de imprimir el texto, no avance tantas lineas?
2- La impresorcita ésta, viene con una cinta rojo-negro y solo imprime en rojo. Cómo modificar este comportamiento?
3- He probado muchos de los códigos mostrados aqui en el foro para el corte de papel, sin resultados. Cómo hacer para que haga el corte automático?

Repito: la impresora es EPSON TM-U220PD M188D, pero he instalando una Generic Text para que pueda imprimir.

Quizás los drivers que me enviará Jose Luis funciones, pero "por si las moscas" acudo a los que ya han tenido experiencia con este modelo de impresora.

Muchas gracias.


Francisco, te los envie temprano a los 2 correos que publicastes, es un archivo .rara renombrado como .ror, revisa en la carpteda NO DESEADO, mi correo es joseluisysturiz@yahoo.com, revisa y confirma por el mismo correo o mandame uno tuyo haber si es que se perdio por el camino, jeje. Tambien tengo el alguna parte el emulador de impresora y un sample que dejo un colega hace años, avisa cualquier detalle, estoy a la orden...saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Para Luis Ponce

Postby FranciscoA » Mon Jan 25, 2016 4:40 am

Lo acabo de resolver.
Solo era usar: PrinterPortToName() y PrintFileRaw()

Gracias a todos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby joseluisysturiz » Mon Jan 25, 2016 7:47 am

FranciscoA wrote:Lo acabo de resolver.
Solo era usar: PrinterPortToName() y PrintFileRaw()

Gracias a todos.


Podrias compartir algun codigo o experiencia para futuros trabajos.? gracias, saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Para Luis Ponce

Postby FranciscoA » Mon Jan 25, 2016 1:27 pm

José Luis.
En vista de que no he sido capaz de resolverlo con TPRINTER, decidí utilizar TDOSPRN que me está funcionando.
Las funciones mencionadas las probé y todo bien, despues de horas de búsqueda y lectura en el foro, y pruebas tratando de usar TPRINTER.
Ninguno de los Drivers bajados me funcionó. Probablemente estoy pasando por alto muchas cosas.

Este es la parte medular del codigo que opté por utilizar, y me funciona. Solo me falta la parte del corte de pagina automatico.

Code: Select all  Expand view  RUN
local xxx,xxx,xxx
   local oPrn, cPort:= UPPER( ALLTRIM( GetPvProfString("Config","PuertoPrn","LPT1",cIniFile) ) )
   local cPrinter := PrinterPortToName(cPort)

  oPrn := TDosPrn():New("PRUEBA.TXT")
  oPrn:StartPage()

      oPrn:Say( nLin, nCol1, PADC(EMPRESA,38) )
      nLin+= 1
      oPrn:Say( nLin, nCol1, PADC(cDirecc,38) )
      nLin+= 1
      oPrn:Say( nLin, nCol1, PADC(cTelef,38) )

  oPrn:EndPage()
  oPrn:End()

  PrintFileRaw( cPrinter, TrueName("PRUEBA.TXT"), "ImpreFactu" )
return nil
 


Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby FranciscoA » Mon Jan 25, 2016 1:35 pm

Si alguno de ustedes puede indicarme los drivers correctos, o bien enviarmelos, para instalar la impresora EPSON TM-U220PD M188D y utilizarla con TPRINTER, lo agradeceré mucho.

Remarco: Con TPRINTER lo que no he logrado es que no dispare tantas lineas en blanco al finalizar el listado, y que haga corte automático. (aunque este último según he leído, basta solo con configurar la impresora)
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby joseluisysturiz » Tue Jan 26, 2016 4:05 am

Francisco, te llego mi correo con los drivers.? lo decia porque no me llego ninguna respuesta tuya, a mi me funciono sin problemas el driver y ademas la impresora es FISCAL, un poco mas complicada aca en mi pais...saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: Para Luis Ponce

Postby gabo » Fri Jan 29, 2016 3:28 pm

FranciscoA
Usando TPrinter de OTRO entorno aunque la filosofia es la misma. Este codigo envia comandas a impresoras remotas
Code: Select all  Expand view  RUN

//------------------------------------------------------------------------------
METHOD BtnEnviarComandasClick( oSender ) CLASS TFormComandaPC
  .
  .
  .

   cSQLQuery:= "SELECT * FROM cat_terminales WHERE "+;
               "id_empresa='" + AppData:cIDCompany + "' AND "+;
               "id_terminal='" + GetComputerName() + "'"

   oSQLTerminal:= AppData:oMySqlDS:Query( cSQLQuery )
   oSQLTerminal:Open()

   IF Len( aCocina ) > 0
      aCocina:= ASORT( aCocina,,, { | a1,a2 | a1[12] < a2[12] } )
      lSeparar:= IF( aCocina[1,11]="SI", .T., .F. )
      IF AllTrim(oSQLTerminal:TIPO_COCINA)=="Termica"
         ::PrnComandaWindows(aCocina, lSeparar, "COCINA")
      ELSE
         ::PrnComandaTexto(aCocina, lSeparar)
      ENDIF
   ENDIF
   oSQLTerminal:Close()

   cSQLQuery:= "SELECT * FROM cat_terminales WHERE "+;
               "id_empresa='" + AppData:cIDCompany + "' AND "+;
               "id_terminal='" + GetComputerName() + "'"

   oSQLTerminal:= AppData:oMySqlDS:Query( cSQLQuery )
   oSQLTerminal:Open()

   IF Len( aBarra ) > 0
      aBarra:= ASORT( aBarra,,, { | a1,a2 | a1[12] < a2[12] } )
      lSeparar:= .F.
      IF AllTrim(oSQLTerminal:TIPO_BARRA)=="Termica"
         ::PrnComandaWindows(aBarra,lSeparar, "BARRA")
      ELSE
         ::PrnComandaTexto(aBarra,lSeparar)
      ENDIF
   ENDIF
   oSQLTerminal:Close()
   WAITOFF()

   ::Close()

RETURN Nil

//------------------------------------------------------------------------------
METHOD PrnComandaTexto( oSender ) CLASS TFormComandaPC
RETURN NIL

//------------------------------------------------------------------------------
METHOD PrnComandaWindows(aComandas, lCortarEnLinea, cImpresora ) CLASS TFormComandaPC
  LOCAL oFontTit3, oFontTit4, cFecha, cLinea, aItems, oSQLTerminal, nImpresora, cSubLinea
  LOCAL nColum, nFilas, oSQLDetalle, cSQLQuery, cMesero, cCantidad, lPrimera, aDetalle
  LOCAL nPartida

  cSQLQuery:= "SELECT * FROM cat_terminales WHERE "+;
              "id_empresa='" + AppData:cIDCompany + "' AND "+;
              "id_terminal='" + GetComputerName() + "'"

  oSQLTerminal:= AppData:oMySqlDS:Query( cSQLQuery )
  oSQLTerminal:Open()

  oFontTit3:= TFont():New()
  WITH OBJECT oFontTit3
      :cName := "Arial"
      :nSize := 12
      :lBold := .F.
  END WITH

  oFontTit4:= TFont():New()
  WITH OBJECT oFontTit4
      :cName := "Arial"
      :nSize := 12
      :lBold := .F.
      :lItalic:= .T.
  END WITH

  IF cImpresora="COCINA"
     cImpresora:= AllTrim(oSQLTerminal:comandas_cocina)
     ::nPrinterCmd:= aScan( Printer:aPrinterNames, {|Imp| Imp == cImpresora } )
  ELSEIF cImpresora="BARRA"
     cImpresora:= AllTrim(oSQLTerminal:comandas_barra)
     ::nPrinterCmd:= aScan( Printer:aPrinterNames, {|Imp| Imp == cImpresora } )
  ENDIF

     ::PrnHeaderComanda()

     nFilas:= ::oPrnComanda:PhysicalOffset()[2]
     nColum:= ::oPrnComanda:PhysicalOffset()[1]
     nFilas:= ::oPrnComanda:PhysicalOffset()[2]
     nColum:= ::oPrnComanda:PhysicalOffset()[1]
     nPartida:= aComandas[1,14]
     FOR EACH aItems IN aComandas
         IF nPartida!=aItems[14]
            nPartida:= aItems[14]

           ::nFilaComanda+= 15
           ::oPrnComanda:oCanvas:MoveTo( 150, ::nFilaComanda+2 )
           ::oPrnComanda:oCanvas:LineTo( 650, ::nFilaComanda+2 )
           ::nFilaComanda+= 15

         ENDIF
            ::oPrnComanda:oCanvas:oFont:= oFontTit3
            cCantidad:= Transform( aItems[6],"@Z 999.99")
            ::oPrnComanda:oCanvas:TextOut( nColum+5, ::nFilaComanda, cCantidad )
            ::oPrnComanda:oCanvas:TextOut( nColum+150, ::nFilaComanda, aItems[3] )
            IF !Empty(aItems[8])
               ::nFilaComanda+= 50
               ::oPrnComanda:oCanvas:oFont:= oFontTit4
               ::oPrnComanda:oCanvas:TextOut( nColum+15, ::nFilaComanda, Left(AllTrim(aItems[8]),32) )
               IF !Empty( SubStr( AllTrim(aItems[8]), 33 ) )
                  ::nFilaComanda+= 45
                  ::oPrnComanda:oCanvas:TextOut( nColum+15, ::nFilaComanda, SubStr( AllTrim(aItems[8]), 33 ) )
               ENDIF
            ENDIF
            ::nFilaComanda+= 45
     NEXT

  ENDIF

  ::oPrnComanda:EndPage()
  ::oPrnComanda:EndDoc()
  ::oPrnComanda:= NIL

  CortaPapel(cImpresora)

  oFontTit3:Destroy()
  oFontTit4:Destroy()

  ::oMemDSDetalle:Refresh()

RETURN NIL

//------------------------------------------------------------------------------
METHOD PrnHeaderComanda() CLASS TFormComandaPC
  LOCAL oFontTit1, oFontTit2, oFontTit3, oFontTit4, oFontTit5, oPen, cFecha
  LOCAL nColum, nFilas, cMesero, cCantidad

  cFecha:= StrZero( Day(AppData:dFechaTPV),2) + "-"+;
           Left(Upper( CMonth(AppData:dFechaTPV)),3) + "-"+;
           Transform( Year(AppData:dFechaTPV),'9999')

  oPen:= TPen():Create( PS_SOLID, 1)

  ::oPrnComanda:= TPrinter():Create()
  ::oPrnComanda:nPrinterIndex:= ::nPrinterCmd
  ::oPrnComanda:lPreview := .F.
  ::oPrnComanda:cJobTitle:= "Comanda "

  ::oPrnComanda:StartDoc()
  ::oPrnComanda:StartPage()

  ::oPrnComanda:oCanvas:nMapMode := mmHIMETRICS

  nFilas:= ::oPrnComanda:PhysicalOffset()[2]
  nColum:= ::oPrnComanda:PhysicalOffset()[1]

  oFontTit1:= TFont():New()
  WITH OBJECT oFontTit1
      :cName := "Arial"   // TEXTO DE MESA
      :nSize := 14
      :lBold := .F.
  END WITH

  oFontTit2:= TFont():New()
  WITH OBJECT oFontTit2
      :cName := "Arial"  // numero de mesa
      :nSize := 26
      :lBold := .T.
  END WITH

  oFontTit3:= TFont():New()
  WITH OBJECT oFontTit3
      :cName := "Arial"   // TEXTO DE PRODUCTOS
      :nSize := 12
      :lBold := .F.
  END WITH

  oFontTit4:= TFont():New()
  WITH OBJECT oFontTit4
      :cName := "Arial"  // clave y nombre del mesero
      :nSize := 14
      :lBold := .T.
  END WITH

  oFontTit5:= TFont():New()
  WITH OBJECT oFontTit5
      :cName := "Arial"
      :nSize := 18
      :lBold := .F.
  END WITH

  WITH OBJECT ::oPrnComanda:oCanvas
      :oFont:= oFontTit1
      :oPen:= oPen

      :MoveTo( 5, 320 )
      :LineTo( 750, 320 )

      :MoveTo( 5, 375 )
      :LineTo( 750, 375 )

      ::nFilaComanda:= 130
      :oFont:= oFontTit5
      :TextOut( nColum+15, ::nFilaComanda, "MESA")

      :oFont:= oFontTit2
      :TextOut( nColum+200, ::nFilaComanda-20, AppData:cNumeroMesaTPV )

      ::nFilaComanda+= 70
      :oFont:= oFontTit1
      :TextOut( nColum+15, ::nFilaComanda, "FECHA:" )
      :TextOut( nColum+200, ::nFilaComanda+3, cFecha )
      :TextOut( nColum+500, ::nFilaComanda+3, Left(Time(),5) )

      ::nFilaComanda+= 55
      :oFont:= oFontTit1
      :TextOut( nColum+15, ::nFilaComanda, "MESERO:" )

      :oFont:= oFontTit4
      :TextOut( nColum+220, ::nFilaComanda, Right(AllTrim(AppData:cMeseroTPV),3) )
      :TextOut( nColum+350, ::nFilaComanda, AppData:cNombreMeseroTPV )

      ::nFilaComanda+= 65

      :oFont:= oFontTit3
      :TextOut( nColum+15, ::nFilaComanda, "CANTID" )
      :TextOut( nColum+180, ::nFilaComanda, "NOMBRE DEL PRODUCTO" )
 END WITH

  ::nFilaComanda:= ::nFilaComanda + 65

  oPen:Destroy()
  oFontTit1:Destroy()
  oFontTit2:Destroy()
  oFontTit3:Destroy()
  oFontTit4:Destroy()

  RETURN NIL
 
gabo
 
Posts: 128
Joined: Tue Jan 03, 2006 8:31 pm

Re: Para Luis Ponce

Postby FranciscoA » Fri Jan 29, 2016 4:41 pm

Gabo.
Gracias por compartir tu codigo.
Voy a estudiarlo atentamente. Por el momento, en vistazo rápido, me ha dado algunas ideas que aplicaré de inmediato.
Eres muy amable. Gracias nuevamente.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby gabo » Fri Jan 29, 2016 11:35 pm

FranciscoA
El siguiente codigo es para Impresoras de Matriz de Punto
Code: Select all  Expand view  RUN

FUNCTION Imprimir()
          aOrdenado:= ORDENAR( aConsumo )
          cComensal:= aOrdenado[1,12]
          cCutter:= ""
          FOR ww:= 1 TO LEN( aOrdenado )
              cCutter:= aOrdenado[1,19]
              IF cPtoAuxi != aOrdenado[ww,7]
                 IF lCierra
                    IF lFinal
                       // @ pRow()+1, 00 SAY chr(27)+"!"+ chr(8)
                       @ pRow()+2, 01 SAY "- - - - - - - - - - - - - - -"
                       IF ALLTRIM(aOrdenado[ww,19]) == "SI"
                          IF cMiniPrint == "E"
                              FOR nn:=1 TO 8
                                  @ pRow()+1, 01 say ""
                              NEXT nn
                              @ pRow()+1, 00 SAY CHR(27) + CHR(109)
                          ELSE
                             @ pRow()+1, 00 SAY CHR(27)+ CHR(100) + CHR(49) // "d" + "0,48"
                          ENDIF
                       ELSE
                          FOR nn:=1 TO 6
                              @ pRow()+1, 01 say ""
                          NEXT nn
                       ENDIF
                    ENDIF
                    SET PRINTER TO
                 ENDIF
                 DBSelectArea( "GRUMEN" ); OrdSetFocus( "GRUPOMN1" )
                 DbSeek( aOrdenado[ww,8] )
                 cPuerto:= ALLTRIM( grumen->PRINTER32 )
                 cPuerto := aOrdenado[ww,7]
                 cPtoAuxi:= aOrdenado[ww,7]
                 nPrnn:= nPrnn + 1

                 cFileTmp:= "P"+ StrZero( HB_Random(99), 2 ) + ;
                                 StrZero( HB_Random(99), 2 ) + ;
                                 StrZero( HB_Random(998), 3 )

                 AADD( aFilesPrn, { cRutaExe + "Spool" + cFileTmp + ".PRN", ;
                                    cPuerto, grumen->ACTIVAR, Left(grumen->NOMBRE,15) } )

                 SET PRINTER TO ( aFilesPrn[nPrnn,1] )
                 SET DEVICE TO PRINTER

                 @ pRow()+1, 00 SAY chr(27)+"!"+ chr(0)  + "-------------------------------"
                 IF cMiniPrint == "E"
                    @ PRow()+1, 00 Say chr(27)+"!"+ Chr(48) + LEFT(aOrdenado[ww,9],7) + " MESA:"+ventas->MESA + chr(27)+ "!"+ chr(8)
                 ELSEIF cMiniPrint == "S" .OR. cMiniPrint == "O"
                    @ PRow()+1, 00 Say Chr(27)+"i" + Chr(1) + Chr(1) + "MESA: "+ventas->MESA + Chr(27)+"i" + Chr(0) + Chr(0)
                 ENDIF
                 @ pRow()+1, 00 SAY chr(27)+"!"+ chr(0)  + "-------------------------------" + chr(27)+ "!"+ chr(8)
                 @ pRow()+1, 00 SAY "COMANDA: " + aOrdenado[ww,1] + "   FOL: "+ AllTrim(Str(ventas->CUENTA,7))  // + "   SILLA: " + aOrdenado[ww,8]
                 @ pRow()+1, 00 SAY "FECHA..: " + ventas->FECHA   + " HORA : " + LEFT(TIME(),5)
                 @ pRow()+1, 00 SAY "CAJA...: " + cNumCajas       + "         TURNO: "+cNumTurno
                 @ pRow()+1, 00 SAY chr(27)+"!"+ chr(0)  + "-------------------------------"
                 lCierra:= TRUE
                 lFinal := TRUE
                 IF !Empty( AllTrim(aOrdenado[ww,12]) )
                    @ PRow()+1,00 Say CHR(27)+CHR(33)+CHR(42)+ "SILLA: " + AllTrim( aOrdenado[ww,12] ) + chr(27)+ "!"+ chr(8)
                 ENDIF
              ENDIF
              DBSelectArea( "GRUMEN" ); OrdSetFocus( "GRUPOMN1" )
              IF DbSeek( aOrdenado[ww,8] )
                 IF grumen->SEPCOMANDA == "S"
                    lCortalo:= TRUE
                    IF lSepara
                       @ pRow()+1, 00 SAY chr(27)+"!"+ chr(0)  + "-------------------------------"
                       IF cMiniPrint == "E"
                          @ PRow()+1, 00 Say chr(27)+"!"+ chr(48)+ LEFT(aOrdenado[ww,9],7) + " MESA:"+ventas->MESA + chr(27)+ "!"+ chr(8)
                          IF !Empty( AllTrim( aOrdenado[ww,12] ) )
                             // @ PRow()+1,00 Say CHR(27)+CHR(33)+CHR(42)+ "SILLA: " + AllTrim( aOrdenado[ww,12] ) +  + chr(27)+"!"+Chr(3)
                          ENDIF
                       ELSEIF cMiniPrint == "S"
                          @ PRow()+1, 00 Say chr(27)+"!"+ Chr(48) + "MESA: "+ventas->MESA + Chr(27)+"i" + Chr(0) + Chr(0)
                       ENDIF
                       @ pRow()+1, 00 SAY chr(27)+"!"+ chr(0)  + "-------------------------------" + chr(27)+ "!"+ chr(8)
                       @ pRow()+1, 00 SAY "COMANDA: " + aOrdenado[ww,1] + " FOL: "+ AllTrim(Str(ventas->CUENTA,7)) // + "   SILLA: " + aOrdenado[ww,8]
                       @ pRow()+1, 00 SAY "FECHA..: " + ventas->FECHA   + " HORA : " + LEFT(TIME(),5)
                       @ pRow()+1, 00 SAY "CAJA...: " + cNumCajas       + "         TURNO: "+cNumTurno
                       @ pRow()+1, 00 SAY chr(27)+"!"+ chr(0)  + "-------------------------------"
                    ENDIF
                 ENDIF
              ENDIF
              IF cComensal != aOrdenado[ww,12]
                 @ PRow()+1,00 Say CHR(27)+CHR(33)+CHR(42)+ "SILLA: " + AllTrim( aOrdenado[ww,12] ) + chr(27)+ "!"+ chr(8)
                 cComensal:= aOrdenado[ww,12]
              ENDIF
              IF aOrdenado[ww,17] == "S"
                 IF aOrdenado[ww,2] == 0.5
                    @ pRow()+1,00 say "MITAD"
                 ELSE
                    @ pRow()+1,00 say aOrdenado[ww,2] PICT '999.99'
                 ENDIF
              ELSE
                 @ pRow()+1, 00 Say aOrdenado[ww,2] PICT '999.99'
              ENDIF
              IF aOrdenado[ww,17] == "S"
                 IF !EMPTY( aOrdenado[ww,5] )
                    @ pRow(), 07 say "-" + AllTrim(aOrdenado[ww,3]) + "/ " + AllTrim(aOrdenado[ww,5])
                    IF !EMPTY( aOrdenado[ww,6] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,6])
                    ENDIF
                 ELSE
                    @ pRow(),07 say "-" + AllTrim(aOrdenado[ww,3])
                 ENDIF
              ELSE
                 IF cMiniPrint == "E"
                    @ pRow(),   07 say AllTrim(aOrdenado[ww,3])
                    IF !EMPTY( AllTrim(aOrdenado[ww,4]) )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,4])
                    ENDIF
                    IF !EMPTY( aOrdenado[ww,5] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,5])
                    ENDIF
                    IF !EMPTY( aOrdenado[ww,6] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,6])
                    ENDIF
                 ELSEIF cMiniPrint == "S"
                    @ pRow(),07 say AllTrim(aOrdenado[ww,3])
                    IF !EMPTY( aOrdenado[ww,5] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,5])
                    ENDIF
                    IF !EMPTY( aOrdenado[ww,6] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,6])
                    ENDIF
                 ELSEIF cMiniPrint == "O"
                    @ pRow(),07 say AllTrim(aOrdenado[ww,3])
                    IF !EMPTY( aOrdenado[ww,5] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,5])
                    ENDIF
                    IF !EMPTY( aOrdenado[ww,6] )
                        @ pRow()+1, 07 SAY AllTrim(aOrdenado[ww,6])
                    ENDIF
                 ENDIF
              ENDIF
              // @ pRow()+1, 08 SAY aOrdenado[ww,12] + " " + aOrdenado[ww,18] PICT '@!'
              // @ pRow()+1, 08 SAY aOrdenado[ww,12] + " " + aOrdenado[ww,18] PICT '@!'
              // IF !Empty( aOrdenado[ww,12] )
              //    @ pRow()+1, 08 SAY aOrdenado[ww,12] PICT '@!'
              // ENDIF
              IF lCortalo
                IF ww != LEN( aOrdenado )
                   @ pRow()+2, 01 SAY "- - - - - - - - - - - - - - -"
                   IF ALLTRIM(aOrdenado[ww,19]) == "SI"
                      IF cMiniPrint == "E"
                         FOR nn:=1 TO 8
                             @ pRow()+1, 01 say ""
                         NEXT nn
                         @ PRow()+1,00 SAY CHR(27) + CHR(109)
                      ELSE
                         @ pRow()+1, 00 SAY CHR(27)+ CHR(100) + CHR(49) // "d" + "0,48"
                      ENDIF
                   ENDIF
                 ENDIF
                 lCortalo:= FALSE
                 lSepara := TRUE
                 lFinal  := FALSE
              ENDIF
          NEXT
          IF ALLTRIM(cCutter) == "SI"
             IF cMiniPrint == "E"
                FOR nn:=1 TO 8
                    @ pRow()+1, 01 say ""
                NEXT nn
                @ PRow()+1,00 SAY CHR(27) + CHR(109)
             ELSE
                @ pRow()+1, 00 SAY CHR(27)+ CHR(100) + CHR(49) // "d" + "0,48"
             ENDIF
          ELSE
             FOR nn:=1 TO 6
                 @ pRow()+1, 01 say ""
             NEXT nn
             @ pRow()+1, 01 SAY "- - - - - - - - - - - - - - -"
          ENDIF
          SET PRINTER OFF
          SET PRINTER TO
          FOR ww:= 1 TO LEN( aFilesPrn )
              IF aFilesPrn[ww,3] == "S"
                 PrintFileRaw( aFilesPrn[ww,2], ;
                               aFilesPrn[ww,1], ;
                               "MESA: " + ventas->MESA + " " + aOrdenado[ww,9] + ;
                               aFilesPrn[ww,4] )
              ENDIF
          NEXT
          SET DEVICE TO SCREEN
          SET CONSOLE ON

          oWait:Close()

 
gabo
 
Posts: 128
Joined: Tue Jan 03, 2006 8:31 pm

Re: Para Luis Ponce

Postby FranciscoA » Sat Jan 30, 2016 3:57 pm

Gracias Gabo.
Voy a probar esos codigos Esc que muestras. Luego te digo.
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Para Luis Ponce

Postby FranciscoA » Tue Feb 02, 2016 3:54 am

Gracias a todos los que intentaron ayudar.
Me doy por vencido, no pude evitar el eject de 1 pagina con la Tprinter. Me quedo con la TDosPrn .
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2159
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 106 guests