Pues... a mi que me lo expliquen.
Los grupos son "Datos" y "Datos Bancarios"
Si no declaro Group se ve así
http://img113.imageshack.us/my.php?imag ... arahf2.jpgSi declaro Group se ve así
http://img372.imageshack.us/my.php?imag ... adaci2.jpgO nos pasamos o no llegamos.
El código es simple:
****************************
#include "FiveWin.ch"
#include "btnget.ch"
#include "tsbutton.ch"
//#include "Ssay.ch"
#define COLOR_BTNFACE 15
//-----------------------------------------
memvar publicas
FUNCTION Empresa()
local oDlg,oDlg1
local vuelta,osay,i,oboton,oboton1
local nccodmun,ncnommun,nccodprov,ncnomprov
local hacer:=0,oculta,oculta1,oculta2,oculta3,oculta4,oculta5
local oNombre,oLbx,obmp
local Grabar:=.F.
SET _3DLOOK ON
dbUseArea(.T.,,Publicas:cUnidad+"\MUNICI",,.T.)
munici->(ordSetfocus("ccodmun"))
dbUseArea(.T.,,Publicas:cUnidad+"\PROVIN",,.T.)
provin->(ordSetfocus("ncodprov"))
dbUseArea(.T.,,Publicas:cUnidad+"\PROPIE",,.T.)
propie->(Ordsetfocus("Codigo"))
propie->(Dbgotop())
Database Publicas:oDbfprop
nccodmun:=Publicas:oDbfprop:codpobla
DEFINE BRUSH Publicas:oBrush RESOURCE "Nubes"
DEFINE DIALOG oDlg1 RESOURCE "BRWGENERI1" BRUSH Publicas:oBrush TRANSPARENT
REDEFINE BtnBMP RESOURCE "PBMPADD1","PBMPADD2","PBMPADD3" ID 172 OF oDlg1 MESSAGE "Añadir" ACTION (Publicas:cTitulo:="Creación de nuevas Empresas ",;
Hacer:=1,oDlg1:End());
WHEN Publicas:cAccesoA;
TOOLTIP "Añadir"
REDEFINE BtnBMP RESOURCE "PBMPMOD1","PBMPMOD2","PBMPMOD3" ID 173 OF oDlg1 MESSAGE "Modificar" ACTION (Publicas:cTitulo:="Modificación de Empresas ",hacer:=2,oDlg1:End());
WHEN Publicas:cAccesoM;
TOOLTIP "Modificar"
REDEFINE BtnBMP RESOURCE "PBMPDEL1","PBMPDEL2","PBMPDEL3" ID 174 OF oDlg1 MESSAGE "Eliminar" ACTION (iif(!Propie->(eof()),(borraem(Publicas:oWPpal),oLbx:UpStable(),oLbx:Refresh()),.T.));
WHEN Publicas:cAccesoA;
TOOLTIP "Eliminar"
REDEFINE BtnBMP RESOURCE "PBMPEND1","PBMPEND2","PBMPEND3" ID 178 OF oDlg1 MESSAGE "Salir" ACTION oDlg1:END();
TOOLTIP "Salir"
REDEFINE Btnbmp oculta ID 175 OF oDlg1
REDEFINE Btnbmp oculta1 ID 176 OF oDlg1
REDEFINE Btnbmp oculta2 ID 177 OF oDlg1
REDEFINE Btnbmp oculta3 ID 179 OF oDlg1
REDEFINE Btnbmp oculta4 ID 180 OF oDlg1
REDEFINE Btnbmp oculta5 ID 181 OF oDlg1
REDEFINE LISTBOX oLbx FIELDS Propie->Codigo,;
Propie->Nombre;
HEADER "Cód","Empresa";
FIELDSIZES 30,200;
ALIAS "PROPIE";
COLOR CLR_BLACK, GetSysColor( COLOR_BTNFACE ) ;
ID 110 OF oDlg
oLbx:nClrPane:={||iIF((oLbx:cAlias)->(OrdKeyNo())%2==0,nRGB(245,219,175),nRGB(245,239,191))}
oLbx:aJustify := {.F.,.F.}
ACTIVATE DIALOG Odlg1 CENTERED ON INIT (oculta:Hide(),oculta1:Hide(),oculta2:Hide(),oculta3:Hide(),oculta4:Hide(),oculta5:Hide())
do case
case hacer=1
Publicas:oDbfprop:Blank()
case hacer=2
Publicas:oDbfprop:Load()
end case
if hacer<>0
DEFINE DIALOG oDlg RESOURCE "Empresas" BRUSH Publicas:oBrush TRANSPARENT
// REDEFINE GROUP ID 48 of oDlg
for i = 1 to 16
REDEFINE SAY ID i OF oDlg
next i
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Codigo ID 101 OF oDlg
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Nombre ID 102 OF oDlg Picture "@!"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Domicilio ID 103 OF oDlg
REDEFINE BTNGET oNombre VAR nccodmun ID 104 OF oDlg Update Picture "XXXXX";
Valid ((nccodmun:= Padl(alltrim(nccodmun),5,"0"),oDlg:Update()),;
IIf (!munici->(dbSeek(nccodmun)) .OR. nccodmun='00000',;
(Locmun(@oDlg,@nccodmun,@ncnommun),oDlg:Update(),.F.),;
(Publicas:oDbfprop:Poblacion:= munici->cnommun,;
Publicas:oDbfprop:codpobla:=munici->ccodmun,;
provin->(dbseek(substr(nccodmun,1,2))),;
Publicas:oDbfprop:codprovin:=provin->ncodprov,;
Publicas:oDbfprop:codpos:=provin->ncodprov+"000",;
Publicas:oDbfprop:Provin:=provin->cnomprov,oDlg:Update(),.T. )))
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Poblacion ID 105 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:codprovin ID 106 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Provin ID 107 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Nif ID 108 OF oDlg
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:codpos ID 109 OF oDlg Update picture "XXXXX"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Telefono ID 110 OF oDlg picture "XXXXXXXXX"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Fax ID 116 OF oDlg picture "XXXXXXXXX"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Email ID 117 OF oDlg picture "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
//REDEFINE GROUP ID 49 of oDlg
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Banco ID 111 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Entidad ID 112 OF oDlg Update picture '@X'
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:agencia ID 113 OF oDlg Update picture '@X'
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:dc ID 114 OF oDlg Update NO MODIFY
REDEFINE BTNGET oNombre var Publicas:oDbfprop:cuenta ID 115 OF oDlg update picture '@X' ;
valid eval({|| vuelta := cdc(Publicas:oDbfprop:entidad+Publicas:oDbfprop:agencia,Publicas:oDbfprop:cuenta),Publicas:oDbfprop:dc := vuelta,odlg:Update(),.T.})
REDEFINE BITMAP oBmp RESOURCE "Lupin" ID 200 OF oDlg ADJUST;
ON LEFT CLICK ( Locmun(@oDlg,@nccodmun,@ncnommun),oDlg:Update())
REDEFINE SBUTTON oboton ID 550 OF oDlg RESOURCE "Lamp1", "Lamp2",, "Lamp3", 'shape3' SHAPE PROMPT "Aceptar" TEXT ON_RIGHT ;
ACTION (Grabar := .T., oDlg:End())
REDEFINE SBUTTON oboton1 ID 551 OF oDlg RESOURCE "Lampr1", "Lampr2",, "Lampr1", 'shape3' SHAPE PROMPT "Cancelar" TEXT ON_RIGHT ;
ACTION (Grabar := .F., oDlg:End())
ACTIVATE DIALOG oDlg CENTERED
IF Grabar
While .not. propie->(Rlock()); end
Publicas:oDbfprop:Save()
Propie->(dbUnlock())
ENDIF
endif
PROPIE->(dbCloseArea() )
MUNICI->(dbCloseArea() )
PROVIN->(dbCloseArea() )
RETURN NIL
***********************
Saludos
Jose Luis