FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Ayuda con REPORT
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Ayuda con REPORT
Posted: Tue Oct 11, 2022 04:59 PM
Hola Amigos.

Tengo un reporte realizado con REPORT, el cual se imprime en hoja nueva por cada GROUP, necesito que al cambiar de GROUP, el nPage comience en 1.

Muchos Saludos

Antonio

Dejo el codigo:
Code (fw): Select all Collapse
Static Function InfTAte(Tit,cNom)
            Local cTi1,cTi2,oPen1,oPen2,oFo1,oFo2,oFo3,oLine,oFo4,nCounter := 0,cTi0,oFo5,oReporte

            MsgRun(" GENERANDO INFORME ", "Espere...")

        DEFINE FONT oFo1 NAME "ARIAL" SIZE 0, -12 BOLD
        DEFINE FONT oFo2 NAME "ARIAL" SIZE 0, -13 BOLD
        DEFINE FONT oFo3 NAME "ARIAL" SIZE 0, -11
        DEFINE FONT oFo4 NAME "ARIAL" SIZE 0, -10
        DEFINE FONT oFo5 NAME "ARIAL" SIZE 0, -18 BOLD



            DEFINE PEN oPen1 STYLE 0 WIDTH 1 COLOR RGB(0, 0, 0)
            DEFINE PEN oPen2 STYLE PS_DOT WIDTH 1 COLOR RGB(0, 0, 0)

            cTi0:= "CENTRO MEDICO REM SUR"

            cTi1:= Titulo


            Abre_dbf("Atencion",5,.f.,"")
            Set Inde to Atencion


        Sele ITAte
        Set Relation To Tip_Ate Into Atencion
        Go Top
        cTi2:="Tipo Examen --> " +(Atencion->Nom_Aten)

   REPORT oReporte;
                    TITLE cTi1,"Tipo Examene --> " +(Atencion->Nom_Aten) ;
          FONT   oFo1,oFo2,oFo3,oFo4,oFo5;
          PEN    oPen1,;
                 oPen2 ;
          HEADER cTi0,"Fecha: "+dtoc(date()),;
                 "Hora:  "+time(), ;
                 "Página: "+str(oReporte:nPage,3) ;
                 RIGHT ;
          PREVIEW

          COLUMN TITLE "Nro. Ing."             DATA Fol_Ing PICTURE "9999999999" SIZE 10   FONT 4
          COLUMN TITLE "Fol. Caja"             DATA Fol_Caj PICTURE "9999999999" SIZE 10   FONT 4
          COLUMN TITLE "Fecha Ing."            DATA Fec_Emi SIZE 10  FONT 4
          COLUMN TITLE "Nombre Paciente"       DATA Nom_Pac SIZE 30 FONT 4
          COLUMN TITLE "Med. Trat."            DATA Med_Tra SIZE 08  FONT 4
          COLUMN TITLE "T. Pago"               DATA Tip_Pag SIZE 08  FONT 4
          COLUMN TITLE "Valor Examen"          DATA Tot_Gen PICTURE "999,999,999" TOTAL RIGHT FONT 3  SIZE 12

         GROUP ON b->Tip_Ate ;
                     HEADER "Tipo Examen: "+Atencion->Nom_Aten;
           FOOTER "Total Examenes "+oReporte:aGroups[1]:cValue+ ;
                  " ("+ltrim(str(oReporte:aGroups[1]:nCounter))+")" +"           "+Transform(oReporte:aGroups[1]:aTotal[6] ,"999,999,999")  FONT 2       EJECT

   END REPORT
     oReporte:oTitle:aFont[1] := {|| 2 }
     oReporte:oTitle:aFont[2] := {|| 1 }
     oReporte:oHeader:aPad[1]:= LINE_LEFT
     oReporte:oHeader:aFont[1] := {|| 5 }
     oReporte:lJoin := .t.
     oReporte:nSeparator := 0
  // oReporte:cGrandTotal:="Total General"      // Titulo de Total General
     oReporte:bEnd:= {||oReporte:lTotal:=.f. }
   oReporte:bEndPage:= {||oReporte:lPageTotal:=.f.}                   // Quitar Total x Pagina
   oReporte:oDevice:SetPortrait()             // Vertical en TReport
   oReporte:oDevice:lPrvModal:=.t.            // Para que Preview salga de Frente no en una Ventana aparte
 //  oReporte:bPostEnd   := {||  oReporte:Say( 1, "Total Pacientes:  " +Str(oReporte:nCounter,5), 1, 1) }
     oReporte:bInit := { || b->( DBGOTOP() ) }           // Habilita Boton Excel en Preview

     ACTIVATE REPORT oReporte


     oFo1:End()
     oFo2:End()
     oFo3:End()
     oFo4:End()
     oFo5:End()
         oPen1:End()
         oPen2:End()
Return .t.
FWH 22.10 - HARBOUR - PELLES C
Posts: 1344
Joined: Wed Nov 16, 2005 09:14 PM
Re: Ayuda con REPORT
Posted: Tue Oct 11, 2022 06:57 PM
Code (fw): Select all Collapse
Static Function InfTAte(Tit,cNom)
            Local cTi1,cTi2,oPen1,oPen2,oFo1,oFo2,oFo3,oLine,oFo4,nCounter := 0,cTi0,oFo5,oReporte

            MsgRun(" GENERANDO INFORME ", "Espere...")

        DEFINE FONT oFo1 NAME "ARIAL" SIZE 0, -12 BOLD
        DEFINE FONT oFo2 NAME "ARIAL" SIZE 0, -13 BOLD
        DEFINE FONT oFo3 NAME "ARIAL" SIZE 0, -11
        DEFINE FONT oFo4 NAME "ARIAL" SIZE 0, -10
        DEFINE FONT oFo5 NAME "ARIAL" SIZE 0, -18 BOLD



            DEFINE PEN oPen1 STYLE 0 WIDTH 1 COLOR RGB(0, 0, 0)
            DEFINE PEN oPen2 STYLE PS_DOT WIDTH 1 COLOR RGB(0, 0, 0)

            cTi0:= "CENTRO MEDICO REM SUR"

            cTi1:= Titulo


            Abre_dbf("Atencion",5,.f.,"")
            Set Inde to Atencion


        Sele ITAte
        Set Relation To Tip_Ate Into Atencion
        Go Top
        cTi2:="Tipo Examen --> " +(Atencion->Nom_Aten)

   REPORT oReporte;
                    TITLE cTi1,"Tipo Examene --> " +(Atencion->Nom_Aten) ;
          FONT   oFo1,oFo2,oFo3,oFo4,oFo5;
          PEN    oPen1,;
                 oPen2 ;
          HEADER cTi0,"Fecha: "+dtoc(date()),;
                 "Hora:  "+time(), ;
                 "Página: "+str(oReporte:nPage,3) ;
                 RIGHT ;
          PREVIEW

          COLUMN TITLE "Nro. Ing."             DATA Fol_Ing PICTURE "9999999999" SIZE 10   FONT 4
          COLUMN TITLE "Fol. Caja"             DATA Fol_Caj PICTURE "9999999999" SIZE 10   FONT 4
          COLUMN TITLE "Fecha Ing."            DATA Fec_Emi SIZE 10  FONT 4
          COLUMN TITLE "Nombre Paciente"       DATA Nom_Pac SIZE 30 FONT 4
          COLUMN TITLE "Med. Trat."            DATA Med_Tra SIZE 08  FONT 4
          COLUMN TITLE "T. Pago"               DATA Tip_Pag SIZE 08  FONT 4
          COLUMN TITLE "Valor Examen"          DATA Tot_Gen PICTURE "999,999,999" TOTAL RIGHT FONT 3  SIZE 12

         GROUP ON b->Tip_Ate ;
                     HEADER "Tipo Examen: "+Atencion->Nom_Aten;
           FOOTER "Total Examenes "+oReporte:aGroups[1]:cValue+ ;
                  " ("+ltrim(str(oReporte:aGroups[1]:nCounter))+")" +"           "+Transform(oReporte:aGroups[1]:aTotal[6] ,"999,999,999")  FONT 2       EJECT

   END REPORT
     oReporte:oTitle:aFont[1] := {|| 2 }
     oReporte:oTitle:aFont[2] := {|| 1 }
     oReporte:oHeader:aPad[1]:= LINE_LEFT
     oReporte:oHeader:aFont[1] := {|| 5 }
     oReporte:lJoin := .t.
     oReporte:nSeparator := 0
  // oReporte:cGrandTotal:="Total General"      // Titulo de Total General
     oReporte:bEnd:= {||oReporte:lTotal:=.f. }
   oReporte:bEndPage:= {||oReporte:lPageTotal:=.f.}                   // Quitar Total x Pagina
   oReporte:oDevice:SetPortrait()             // Vertical en TReport
   oReporte:oDevice:lPrvModal:=.t.            // Para que Preview salga de Frente no en una Ventana aparte
 //  oReporte:bPostEnd   := {||  oReporte:Say( 1, "Total Pacientes:  " +Str(oReporte:nCounter,5), 1, 1) }
     oReporte:bInit := { || b->( DBGOTOP() ) }           // Habilita Boton Excel en Preview
     oReporte:bEndGroup := {|| oReporte:nPage := 0 }  //Agregar esta linea

     ACTIVATE REPORT oReporte


     oFo1:End()
     oFo2:End()
     oFo3:End()
     oFo4:End()
     oFo5:End()
         oPen1:End()
         oPen2:End()
Return .t.
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: Ayuda con REPORT
Posted: Wed Oct 12, 2022 01:06 PM

Buen dia Amigo Cesar.

Como estas?

Como siempre, funciono PERFECTO.

Muchas gracias y muchos saludos.

Antonio.

FWH 22.10 - HARBOUR - PELLES C

Continue the discussion