xbrowse y tdolphin

xbrowse y tdolphin

Postby kpidata » Tue Oct 31, 2017 2:02 pm

Estimados amigos, favor de indicar que puede ser como situación
esto se ve bien usando dbf y me respeta la letra y la imagen que esta asociada.

DEFINE FONT oVfont NAME "Tahoma" SIZE 0,-10 NESCAPEMENT 900

oCol2:=oBrw2:AddCol()
oCol2:AddResource("BTO_ON");oCol2:AddResource("BTO_OFF")
oCol2:cHeader := "Inspeccion"
oCol2:nDataStrAlign := AL_RIGHT
oCol2:bBmpData := { || iif( Ext_Otr1->Servicio=1, 1, 2) }
oCol2:oHeaderFont := oVFont

pero si esto lo paso a Mysql, con xBrowse.. no hace nada de nada... la imagen no aparece y aparece .F. y la letra del titulo en forma vertical.


Brw2:=TxBrowse():New(oDlg2)
oBrw2:nMarqueeStyle := MARQSTYLE_HIGHLROW // Con cursor de todo el renglón
oBrw2:nColDividerStyle := LINESTYLE_RAISED
oBrw2:nRowDividerStyle := LINESTYLE_RAISED
oBrw2:lColDividerComplete := (.t.) // (.T.) Mantiene siempre llena la pantalla
oBrw2:nHeaderHeight := 35 // Altura de los encabezados
oBrw2:nRowHeight := 25 // Altura del renglón
oBrw2:nHeaderLines := 3 // Número de líneas de encabezados
oBrw2:nDataLines := 2 // Número de líneas de detalle
oBrw2:nFooterHeight := 20 // Altura del footer
oBrw2:nFooterLines := 2 // Número de líneas en el footer
oBrw2:lFooter := (.T.) // Sí queremos línea de footer
oBrw2:lHScroll := (.T.) // Quitamos el scroll horizontal
oBrw2:bClrStd := {|| { nRGB(000,000,000), nRGB(255,255,200) } }
oBrw2:bClrHeader := {|| { nRGB(000,000,000), nRGB(128,255,128) } }
oBrw2:bClrFooter := {|| { nRGB(000,000,000), nRGB(150,200,200) } }
oBrw2:bClrSel := {|| { nRGB(000,000,000), nRGB(128,255,128) } }
oBrw2:bClrSelFocus := {|| { nRGB( 0, 0, 0), nRGB(128,255,128) } } // para barra de linea selecc cuando el control tiene el foco
oBrw2:oFont := oFon2
oBrw2:SetDolphin(cExt_Otr1)

oCol2:=oBrw2:AddCol()
oCol2:AddResource("BOTONSI");oCol2:AddResource("BOTONNO")
oCol2:cHeader := "Inspeccion"
oCol2:nDataStrAlign := AL_RIGHT
oCol2:bBmpData := { || iif( cExt_Otr1:Servicio=1, 1, 2) }
oCol2:oHeaderFont := oVFont

en que estoy fallando o no se puede ??'
kpidata
 
Posts: 80
Joined: Tue Jul 26, 2016 9:52 pm

Re: xbrowse y tdolphin

Postby joseluisysturiz » Tue Oct 31, 2017 4:20 pm

Kpidata, que tipo de campo es "Servicio" en la tabla mysql.?, como estas haciendo la consulta SQL.? 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: xbrowse y tdolphin

Postby kpidata » Thu Nov 02, 2017 2:26 pm

estimado esta es la consulta

cExt_Rec1:=xServer:Query("SELECT a.*, b.* FROM ext_rec1 AS a INNER JOIN tab_cte AS b ON b.rut_cte = a.rut_cte WHERE a.cod_tra='"+cFic_Tra+"' ORDER BY a.cod_tra")
cExt_Rec1:GoTop()

y el campo es un campo lógico V o F
kpidata
 
Posts: 80
Joined: Tue Jul 26, 2016 9:52 pm

Re: xbrowse y tdolphin

Postby carlos vargas » Thu Nov 02, 2017 7:13 pm

ok, iniciamos:
para emular una columna de tipo logico en una tabal en mysql, dicha columna debe ser definida como de tipo TINYINT de tamaño 1, con un valor default de 0
y los datos que va a almacenar seria numerico ya sea un 1 para Definir verdadero y 0 para falso.
Image
ahora al inicio en nuestro programa que usa tdolphin usamos:
Code: Select all  Expand view  RUN

/*Dolphin header*/
#include "tdolphin.ch"
FUNCTION Main_Configurar()
   LOCAL cPath      := Upper( CurDrive() + ":\" + CurDir() )
   LOCAL lContinuar := FALSE

   HB_LangSelect(  "
ESWIN" )
   HB_SetCodePage( "
ESWIN" )
   /*Exclusivo para tdolphin*/
   SET DEFAULTCLPVALUE ON
   SET LOGICALVALUE    ON            //<--------- para emular campos logicos
   SET CASESENSITIVE   ON
   SET PADRIGHT        ON


ahora para definir columnas de tipo logicos con tdolphin:
Code: Select all  Expand view  RUN

   oQryCtrl := oServer:Query( "select cont_caso from control limit 1" )
   oQryCaso := oServer:Query( "select * from vcasos order by num_caso" )   //aca vcasos es un view con las columnas de la tabla casosm
   oQryClie := oServer:Query( "select num_clie, ruc, nombre from clientes order by nombre" )

?oQryCaso:cerrado, valtype( oQryCaso:cerrado )   // retornara .T., 'L'

   DEFINE DIALOG oDlg NAME "DLG_CASOC" OF oMainWnd ICON GetIcon() FONT oFontD

   REDEFINE XBROWSE oBrw DATASOURCE oQryCaso ID 101 OF oDlg ;
      HEADERS "Número", "Nº de cliente", "Nombre de cliente", "Asunto", "Apertura", "Cerrado" ;
      COLUMNS "NUM_CASO", "NUM_CLIE", "NOM_CLIE", "ASUNTO", "FDA", "CERRADO" ;
      SIZES 080, 080, 250, 250, 080, 050 ;
      PICTURES "@L 9999", "@L 9999", NIL, NIL, NIL, NIL ;
      JUSTIFY AL_CENTER, AL_CENTER, NIL, NIL, NIL, NIL ;
      ON DBLCLICK IIf( oQryCaso:RecCount()>0, Caso_Editar( FALSE ), NIL ) FONT oFontD

   WITH OBJECT oBrw
      :MyConfig()
      :aCols[ 01 ]:nHeadStrAlign := AL_CENTER
      :aCols[ 02 ]:nHeadStrAlign := AL_CENTER
      :aCols[ 06 ]:SetCheck( { "BMS_CHECKON", "BMS_CHECKOFF" } )            //<------------ "CERRADO" campo emulado como logico
      :bKeyDown      := {|nKey| IIf( oQryCaso:RecCount()>0, Caso_ProcesaTecla( nKey ), NIL ) }
      :lHScroll      := FALSE
      :nHeaderHeight := 36
      :nFreeze       := 6
   END
 

Resultado
Image
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1721
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 29 guests