REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

Postby ruben Dario » Tue Feb 23, 2010 10:50 pm

Como imprimo una segunda linea con el REPORT requiero imprimir un registro en 2 o mas lineas

Code: Select all  Expand view

  REPORT oReport ;
          TITLE  "REGISTRO REFERENCIAS ",;
                 OemtoAnsi("");
          FONT   oFon1,;
                 oFon2,;
                 oFon3 ;
          PEN    oPen1,;
                 oPen2 ;
          HEADER  " Fecha : "+dtoc(date()),;
                  "Hora  : "+time(),;
                  "Pagina: "+strzero(oReport:nPage,3),;
                  memvar->X_TPAQU;
                  RIGHT ;
          FOOTER OemtoAnsi(memvar->X_SIGLA );//  CENTERED;
          PREVIEW  //TO DEVICE oPrn PREVIEW     //      TO FILE "d:\test.txt" TO

    oReport:bPreInit:= { || oDatos:MoveFirst() }  // se cocolo el 22 ago 2009 prueba para excel

         COLUMN TITLE "Sta" DATA  { || iif( oDatos:Fields("status"):Value=1,"Si","No")} ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Item" DATA oDatos:Fields("consec"):Value;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Codigo.Prod" DATA oDatos:Fields("codprod"):Value;
                FONT 1  SIZE 10 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Simbolo" DATA oDatos:Fields("simbolo"):Value ;
                FONT 1  SIZE 35  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Referencia" DATA oDatos:Fields("referencia"):Value ;
                FONT 1  SIZE 25  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Largo/Alt" DATA oDatos:Fields("largo"):Value PICTURE "999.99" ;
                FONT 1  SIZE 8 //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Ancho/B.Menor" DATA oDatos:Fields("ancho"):Value PICTURE "999.99" ;
                FONT 1  SIZE 8  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Ancho/B.Menor" DATA oDatos:Fields("ancho_m"):Value PICTURE "999.99";
                FONT 1  SIZE 10 //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Fuelle.F" DATA oDatos:Fields("fuel_f"):Value PICTURE "999.99" ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Fuelle.L" DATA oDatos:Fields("fuel_l"):Value PICTURE "999.99" ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Tara" DATA oDatos:Fields("tara"):Value  PICTURE "999.99";
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Solapa" DATA oDatos:Fields("solapa"):Value PICTURE "999.99" ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Metros" DATA oDatos:Fields("metros"):Value PICTURE "999.99" ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Peso/Mil" DATA oDatos:Fields("kilmil"):Value PICTURE "99.9999" ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado

// esto que sigue lo requiero en otra linea
         COLUMN TITLE "Tipo.Selle" DATA oDatos:Fields("nombre_selle"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Tipo.Estilo" DATA oDatos:Fields("nombre_estilo"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Tipo.Material" DATA oDatos:Fields("nombre_mat"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Ruta" DATA oDatos:Fields("nombre_rut"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Tipo.Fac" DATA oDatos:Fields("tipo_factu"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Caras" DATA oDatos:Fields("caras"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Colores" DATA oDatos:Fields("colores"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "C.Tratatas" DATA oDatos:Fields("tratado"):Value ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "No.Carperf" DATA  oDatos:Fields("ncarper"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Tipo.Perforado" DATA  oDatos:Fields("tipo_perforado"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Tipo.Troquelado" DATA  oDatos:Fields("Tipo_troquelado"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Selle.Adicional" DATA  oDatos:Fields("Selle_adicn"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Dist.Perf" DATA  oDatos:Fields("Distper"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Nro.Macperf" DATA  oDatos:Fields("nro_macper"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Tipo.Manija" DATA  oDatos:Fields("Tipo_manija"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Color.Manija" DATA  oDatos:Fields("color_manija"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Termino_Envio" DATA  oDatos:Fields("termino_envio"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "num_paq" DATA  oDatos:Fields("num_paq"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "uni_paq" DATA  oDatos:Fields("uni_paq"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Nro.Macperf" DATA  oDatos:Fields("nro_macper"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical

    END REPORT
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
User avatar
ruben Dario
 
Posts: 1061
Joined: Thu Sep 27, 2007 3:47 pm
Location: Colombia

Re: REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

Postby MauroArevalo » Tue Feb 23, 2010 11:21 pm

Ruben Dario:

Prueba así:

Code: Select all  Expand view

 COLUMN TITLE "Tipo.Selle/Tipo.Estilo";
        DATA  (oDatos:Fields("nombre_selle "):Value),;
              (oDatos:Fields("nombre_estilo"):Value) ;
        FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
 


Espero te sirva.
Edgar Mauricio Arévalo Mogollón.
Bogotá DC. Colombia
FWH FTDN, xHarbour 1.2.1, Pelles C, Fivedit, Visual Studio Code, Borland 7.30, Mysql, Dbfs
http://www.hymplus.com http://www.hymlyma.com
Tratando de retomar la programación....
User avatar
MauroArevalo
 
Posts: 105
Joined: Thu Jan 19, 2006 11:47 pm
Location: Bogota DC. Colombia

Re: REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

Postby ruben Dario » Wed Feb 24, 2010 9:17 pm

Perfecto Mauricio Me funciono, Te pregunto tu tienes un ejemplo para hacer rompimiento.
Es decir quiero hacer rompimiento por el cliente, es este caso codprov.

La otra preguna seria como dejo una linea en blanco por cada 2 lineas que imprimo para este caso
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
User avatar
ruben Dario
 
Posts: 1061
Joined: Thu Sep 27, 2007 3:47 pm
Location: Colombia

Re: REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

Postby MauroArevalo » Fri Feb 26, 2010 4:28 pm

Ruben Dario:

Ejemplo con codigo como tal no, pero talvez lo hara asi:

Genero un ciclo con do while, genero la variable temporal de V_CodProv , la cargo con los datos de la DBF y luego en la medida que avanza el registro lo comparo con los datos de la DBF, cuando encuentre diferencia hago el rompimiento y vuelvo a cargar la V_CodProv de la DBF y sigue hasta terminar el ciclo do while..

Para la linea en blanco aprovechando que se esta en el ciclo do while genero un variable contador V_linea y en la medida que cumpla la condición V_linea=2 genero la linea en blanco :
Code: Select all  Expand view

COLUMN TITLE  DATA IF(V_linea=2, "      " , (oDatos:Fields("nombre_selle "):Value) )..
 


y se inicializa la variable otra vez a V_linea=1

Saludos
Edgar Mauricio Arévalo Mogollón.
Bogotá DC. Colombia
FWH FTDN, xHarbour 1.2.1, Pelles C, Fivedit, Visual Studio Code, Borland 7.30, Mysql, Dbfs
http://www.hymplus.com http://www.hymlyma.com
Tratando de retomar la programación....
User avatar
MauroArevalo
 
Posts: 105
Joined: Thu Jan 19, 2006 11:47 pm
Location: Bogota DC. Colombia

Re: REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

Postby ruben Dario » Fri Feb 26, 2010 8:45 pm

Mauricio , Me podrias indicar en donde se colocaria el Do while.
Pense que existia algun alguna function incorporada el REport , Pense que era esta
GROUP ON FIELD->CODICABEZ ;
HEADER "";

Actualmente estoy trabajando con Mysql





Code: Select all  Expand view

REPORT oReport ;
          TITLE  "REGISTRO REFERENCIAS ",;
                 OemtoAnsi("");
          FONT   oFon1,;
                 oFon2,;
                 oFon3 ;
          PEN    oPen1,;
                 oPen2 ;
          HEADER  " Fecha : "+dtoc(date()),;
                  "Hora  : "+time(),;
                  "Pagina: "+strzero(oReport:nPage,3),;
                  memvar->X_TPAQU;
                  RIGHT ;
          FOOTER OemtoAnsi(memvar->X_SIGLA );//  CENTERED;
          PREVIEW  //TO DEVICE oPrn PREVIEW     //      TO FILE "d:\test.txt" TO

    oReport:bPreInit:= { || oDatos:MoveFirst() }  

         COLUMN TITLE "Sta" DATA  { || iif( oDatos:Fields("status"):Value=1,"Si","No")} ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Item" DATA oDatos:Fields("consec"):Value;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Codigo.Prod" DATA oDatos:Fields("codprod"):Value;
                FONT 1  SIZE 10 //SHADOW GRID 1 hace la raya vertical
        COLUMN TITLE "Solapa" DATA oDatos:Fields("solapa"):Value PICTURE "999.99" ;
                FONT 1  SIZE 6  //SHADOW grid  //coloca sombreado
         COLUMN TITLE "Metros" DATA oDatos:Fields("metros"):Value PICTURE "999.99" ;
              FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical
         COLUMN TITLE "Tipo.Troquelado" DATA  oDatos:Fields("Tipo_troquelado"):Value ;
                FONT 1  SIZE 3 //SHADOW GRID 1 hace la raya vertical


    END REPORT
 
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
User avatar
ruben Dario
 
Posts: 1061
Joined: Thu Sep 27, 2007 3:47 pm
Location: Colombia

Re: REPORT IMPRIMIR EN 2 LINEAS UN REGISTRO

Postby Ramon Paredes » Sat Feb 27, 2010 2:20 am

Ruben Dario ,

Un ejemplo de un reporte con rompimiento x cliente

SELECT C
USE CLIENTES NEW SHARED
INDEX ON C->COD_CLI + C->NUM_DOC TAG MIINDICE

REPORT oReport TITLE " ","EMPRESA X S.A. ","ESTADO DE SALDOS Y ABONOS", "HISTORICO X CLIENTE ";
PREVIEW

GetPrintDc()

COLUMN TITLE "No FACT " DATA C->NUM_DOC SIZE 9
COLUMN TITLE "Fecha " DATA C->FEC_FAC PICTURE "99/99/9999" SIZE 11
COLUMN TITLE "F/Venc " DATA C->FEC_VENC PICTURE "99/99/9999" SIZE 11
COLUMN TITLE "Monto " DATA C->CARGO PICTURE "999,999.99" TOTAL
COLUMN TITLE "Abonado " DATA C->ABONADO PICTURE "999,999.99" TOTAL
COLUMN TITLE "Ajuste " DATA C->IGV_DOL PICTURE "9,999.99" TOTAL
COLUMN TITLE "Saldo " DATA C->IGV_COR PICTURE "999,999.99" TOTAL

GROUP ON C->CODIGO // DEFINO EL ROMPIMIENTO SIN NECESIDAD DEL DO WHILE

END REPORT

ACTIVATE REPORT oReport ON ENDPAGE oReport:lPageTotal:= .f. ;
ON STARTGROUP( oReport:NewLine(),;
oReport:EndLine(),;
oReport:Say(0,"CLIENTE : " +C->CODIGO+"-"+ALLTRIM(C->NOMBRES),4,,oReport:nRow),;
oReport:NewLine(),;
oReport:EndLine() ) ;

CLOSE CLIENTES

RETURN NIL

ESPERO TE SEA DE UTILIDAD
SALUDOS DESDE Manaua, Nicaragua

Ramon Paredes
... Desde la Tierra de lagos y Volcanes......
User avatar
Ramon Paredes
 
Posts: 215
Joined: Fri Feb 02, 2007 3:38 pm
Location: Managua, Nicaragua


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 11 guests