Mi primer programa en fivelinux (editor dbf )
-
- Posts: 116
- Joined: Wed Mar 11, 2009 7:32 pm
- Location: Obregon, Sonora, Mexico
Mi primer programa en fivelinux (editor dbf )
Hola buen dias ,, es mi primer programa en fivelinux
es un modulo que muestra x base de datos en dbf
por lo pronto la primera parte tiene muestra la base de datos ,,, altas , bajas , cambios estructura , genera un archivo respaldo.dbf que es el que contiene los cambios
la segunda parte sera,, abc, de los registros
en el codigo tengo varias condiciones dependiendo de cuantos campos contiene la base de datos ,, ya que no supe como meter los campos de manera directa jjijiji, hay que modificar la clase o saber como meterlos en fivewin los metos en un arreglo y listo .
saludos ,,,
esta en prueba por las validaciones .. si tiene alguna modificacion o mejora pues sobres , esta coriendo en ubunto 12.04, debe de correr en las otras versiones
http://www.eleben.com.mx/primer.prg
es un modulo que muestra x base de datos en dbf
por lo pronto la primera parte tiene muestra la base de datos ,,, altas , bajas , cambios estructura , genera un archivo respaldo.dbf que es el que contiene los cambios
la segunda parte sera,, abc, de los registros
en el codigo tengo varias condiciones dependiendo de cuantos campos contiene la base de datos ,, ya que no supe como meter los campos de manera directa jjijiji, hay que modificar la clase o saber como meterlos en fivewin los metos en un arreglo y listo .
saludos ,,,
esta en prueba por las validaciones .. si tiene alguna modificacion o mejora pues sobres , esta coriendo en ubunto 12.04, debe de correr en las otras versiones
http://www.eleben.com.mx/primer.prg
Last edited by benjiben143 on Wed Jun 27, 2012 10:05 pm, edited 2 times in total.
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
- Antonio Linares
- Site Admin
- Posts: 42405
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 12 times
- Been thanked: 48 times
- Contact:
Re: Mi primer programa en fivelinux (editor dbf )
Puedes mostrar algunas capturas de pantallas ? gracias
Se parece al FiveDBU que hemos publicado en estos foros ?
Se parece al FiveDBU que hemos publicado en estos foros ?
-
- Posts: 116
- Joined: Wed Mar 11, 2009 7:32 pm
- Location: Obregon, Sonora, Mexico
Re: Mi primer programa en fivelinux (editor dbf )
Hola antonio buenas tardes
la estructura de las modificacion es de un modulo hecho en clipper desde hace tiempo , adapatado a fivelinux , se puede en fivemac y en fivewin no mas cambiando el browse .. ( tengo tambien un modulo que sincroniza las dbf es es muy bueno para las actualizaciones aver si lo encuentro esta en el baul de los recuerdos de inicio )
el codigo se puede adaptar mas pequeño , falta cambiar y adaptar la clase browse para no poner tantas condiciones
con fivewin uso aunque usted no lo crea use el mfoxplus el viejito en modo consola se me hace muy practico
y con el linux no lo tiene pues lo adapte , y si vi el fivedbu se me hace a todo dar ,, muy completo y excelente
saludos
http://www.publicarfotos.com/Fotos-moddbu-f18570-a3
la estructura de las modificacion es de un modulo hecho en clipper desde hace tiempo , adapatado a fivelinux , se puede en fivemac y en fivewin no mas cambiando el browse .. ( tengo tambien un modulo que sincroniza las dbf es es muy bueno para las actualizaciones aver si lo encuentro esta en el baul de los recuerdos de inicio )
el codigo se puede adaptar mas pequeño , falta cambiar y adaptar la clase browse para no poner tantas condiciones
con fivewin uso aunque usted no lo crea use el mfoxplus el viejito en modo consola se me hace muy practico
y con el linux no lo tiene pues lo adapte , y si vi el fivedbu se me hace a todo dar ,, muy completo y excelente
saludos
http://www.publicarfotos.com/Fotos-moddbu-f18570-a3
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
Re: Mi primer programa en fivelinux (editor dbf )
benjiben143 wrote:Hola buen dias ,, es mi primer programa en fivelinux
es un modulo que muestra x base de datos en dbf
por lo pronto la primera parte tiene muestra la base de datos ,,, altas , bajas , cambios estructura , genera un archivo respaldo.dbf que es el que contiene los cambios
la segunda parte sera,, abc, de los registros
en el codigo tengo varias condiciones dependiendo de cuantos campos contiene la base de datos ,, ya que no supe como meter los campos de manera directa jjijiji, hay que modificar la clase o saber como meterlos en fivewin los metos en un arreglo y listo .
saludos ,,,
esta en prueba por las validaciones .. si tiene alguna modificacion o mejora pues sobres , esta coriendo en ubunto 12.04, debe de correr en las otras versiones
http://www.eleben.com.mx/primer.prg
no puedo descargar el prg . Estoy interesado en el modulo que realiza los cambios de la estructura del dbf y guarda el resultado .
¿ Pedes ponernos aqui el código ?
Saludos.
- Antonio Linares
- Site Admin
- Posts: 42405
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 12 times
- Been thanked: 48 times
- Contact:
Re: Mi primer programa en fivelinux (editor dbf )
Manuel,
En FiveDBU está implementado el cambio de estructura, lo que hacemos es crear una nueva DBF para evitar problemas
En FiveDBU está implementado el cambio de estructura, lo que hacemos es crear una nueva DBF para evitar problemas
Re: Mi primer programa en fivelinux (editor dbf )
Antonio Linares wrote:Manuel,
En FiveDBU está implementado el cambio de estructura, lo que hacemos es crear una nueva DBF para evitar problemas
No lo he visto . ¿ Se mantienen los datos dentro de la base de datos en la mendida de lo posible , como hace el gestor de advantage ?
- Antonio Linares
- Site Admin
- Posts: 42405
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 12 times
- Been thanked: 48 times
- Contact:
Re: Mi primer programa en fivelinux (editor dbf )
Manuel,
Si. Se crea una nueva DBF con la estructura modificada y luego se le añaden los registros:
La clave está en que si lCopy es .T. entonces:
Si. Se crea una nueva DBF con la estructura modificada y luego se le añaden los registros:
Code: Select all | Expand
function New( cAlias )
local oDlg, oGet, oBrw, oBtn, cTitle, cNewAlias, oBrwNew, lCopy := .F.
local cFieldName := Space( 10 ), cType := "Character", nLen := 10, nDec := 0
local aFields := { Array( 4 ) }, cDbfName := Space( 8 ), aTemp
local oLen, oDec, aType := { "Character", "Number", "Date", "Logical", "Memo" }
local bChange := {|| If( cType == "Character", (nLen := 10, nDec := 0, oDec:Disable() ),),;
If( cType == "Number", (nLen := 10, nDec := 0, oDec:Enable() ),),;
If( cType == "Date", (nLen := 8, nDec := 0, oDec:Disable() ),),;
If( cType == "Logical", (nLen := 1, nDec := 0, oDec:Disable() ),),;
If( cType == "Memo", (nLen := 10, nDec := 0, oDec:Disable() ),),;
oDlg:Update() }
local bEdit := {|| IF ( !Empty (aFields[1,1]) ,;
(oBtn:Enable (),;
cFieldName := aFields[oBrw:nArrayAt,1] ,;
cType := aFields[oBrw:nArrayAt,2] ,;
cType := aType[ aScan(aType, {|x| Left(x,1) = cType} )],;
Eval (bChange) ,;
nLen := aFields[oBrw:nArrayAt,3] ,;
nDec := aFields[oBrw:nArrayAt,4] ,;
oGet:SetPos( 0 ),;
oGet:SetFocus(),;
oDlg:Update() ) ,) ;
}
local bSave := {|| oBtn:Disable (),;
aFields[oBrw:nArrayAt,1] := cFieldname,;
aFields[oBrw:nArrayAt,2] := Left (cType,1),;
aFields[oBrw:nArrayAt,3] := nLen,;
aFields[oBrw:nArrayAt,4] := nDec,;
oBrw:SetArray (aFields),;
cFieldName := Space( 10 ),;
Eval (bChange) ,;
oDlg:Update() ,;
oGet:SetPos( 0 ),;
oGet:SetFocus(),;
oBrw:GoBottom();
}
if ! Empty( cAlias )
aFields = ( cAlias )->( DbStruct() )
cTitle = "Modify DBF struct"
else
cTitle = "DBF builder"
endif
DEFINE DIALOG oDlg TITLE cTitle SIZE 415, 400
@ 0.5, 2 SAY "Field Name" OF oDlg SIZE 40, 8
@ 0.5, 10 SAY "Type" OF oDlg SIZE 40, 8
@ 0.5, 17 SAY "Len" OF oDlg SIZE 40, 8
@ 0.5, 22 SAY "Dec" OF oDlg SIZE 20, 8
@ 1.4, 1 GET oGet VAR cFieldName PICTURE "!!!!!!!!!!" OF oDlg SIZE 41, 11 UPDATE
@ 1.3, 6.5 COMBOBOX cType ITEMS aType ;
OF oDlg ON CHANGE Eval (bChange) UPDATE
@ 1.4, 11.9 GET oLen VAR nLen PICTURE "999" OF oDlg SIZE 25, 11 UPDATE
@ 1.4, 15.4 GET oDec VAR nDec PICTURE "999" OF oDlg SIZE 25, 11 UPDATE
@ 0.9, 26 BUTTON "&Add" OF oDlg SIZE 45, 13 ;
ACTION AddField( @aFields, @cFieldName, @cType, @nLen, @nDec, oGet, oBrw )
@ 2.4, 26 BUTTON oBtn PROMPT "&Edit" OF oDlg SIZE 45, 13 ;
ACTION Eval (bSave)
@ 3.4, 26 BUTTON "&Delete" OF oDlg SIZE 45, 13 ;
ACTION DelField( @aFields, @cFieldName, oGet, oBrw )
@ 4.4, 26 BUTTON "Move &Up" OF oDlg SIZE 45, 13 ;
ACTION If( oBrw:nArrayAt > 1,;
( aTemp := aFields[ oBrw:nArrayAt ],;
aFields[ oBrw:nArrayAt ] := aFields[ oBrw:nArrayAt - 1 ],;
aFields[ oBrw:nArrayAt - 1 ] := aTemp,;
oBrw:GoUp() ),)
@ 5.4, 26 BUTTON "Move D&own" OF oDlg SIZE 45, 13 ;
ACTION If( oBrw:nArrayAt < Len( aFields ),;
( aTemp := aFields[ oBrw:nArrayAt ],;
aFields[ oBrw:nArrayAt ] := aFields[ oBrw:nArrayAt + 1 ],;
aFields[ oBrw:nArrayAt + 1 ] := aTemp,;
oBrw:GoDown() ),)
@ 6.4, 26 BUTTON "&Cancel" OF oDlg SIZE 45, 13 ;
ACTION oDlg:End()
@ 2.2, 2 SAY "Fields" OF oDlg SIZE 40, 8
@ 3.2, 1 XBROWSE oBrw ARRAY aFields AUTOCOLS ;
HEADERS "Name", "Type", "Len", "Dec" ;
COLSIZES 90, 55, 40, 40 ;
SIZE 140, 130 OF oDlg ;
ON DBLCLICK Eval (bEdit)
oBrw:nMarqueeStyle := MARQSTYLE_HIGHLROW
oBrw:bClrStd = { || If( oBrw:KeyNo() % 2 == 0, ;
{ CLR_BLACK, RGB( 198, 255, 198 ) }, ;
{ CLR_BLACK, RGB( 232, 255, 232 ) } ) }
oBrw:bClrSel = { || { CLR_WHITE, RGB( 0x33, 0x66, 0xCC ) } }
oBrw:SetColor( CLR_BLACK, RGB( 232, 255, 232 ) )
oBrw:CreateFromCode()
@ 12.1, 2 SAY "DBF Name:" OF oDlg SIZE 30, 8
if ! Empty( cAlias )
cDbfName = cGetNewAlias( cAlias )
endif
@ 14, 6 GET cDbfName PICTURE "!!!!!!!!!!!!" OF oDlg SIZE 100, 11
@ 10, 26 BUTTON If( Empty( cAlias ), "&Create", "&Save" ) OF oDlg SIZE 45, 13 ;
ACTION ( If( ! Empty( cDbfName ) .and. Len( aFields ) > 0,;
DbCreate( AllTrim( cDbfName ), aFields ),), oDlg:End(),;
lCopy := .T.,;
oBrwNew := Open( hb_CurDrive() + ":\" + CurDir() + "\" + AllTrim( cDbfName ) ) )
ACTIVATE DIALOG oDlg CENTERED ;
ON INIT ( Eval ( bChange ), oBtn:Disable() ) ;
VALID ! GETKEYSTATE( VK_ESCAPE )
if ! Empty( cAlias ) .and. lCopy
APPEND FROM ( cAlias )
oBrwNew:Refresh()
endif
return nil
La clave está en que si lCopy es .T. entonces:
Code: Select all | Expand
@ 10, 26 BUTTON If( Empty( cAlias ), "&Create", "&Save" ) OF oDlg SIZE 45, 13 ;
ACTION ( If( ! Empty( cDbfName ) .and. Len( aFields ) > 0,;
DbCreate( AllTrim( cDbfName ), aFields ),), oDlg:End(),;
lCopy := .T.,;
oBrwNew := Open( hb_CurDrive() + ":\" + CurDir() + "\" + AllTrim( cDbfName ) ) )
Code: Select all | Expand
if ! Empty( cAlias ) .and. lCopy
APPEND FROM ( cAlias )
oBrwNew:Refresh()
endif
Re: Mi primer programa en fivelinux (editor dbf )
ok.
Lo reviso cuando tenga algo de tiempo ( volver de vacaciones es la leche ) y lo añadimos a la version de mac.
Saludos.
Lo reviso cuando tenga algo de tiempo ( volver de vacaciones es la leche ) y lo añadimos a la version de mac.
Saludos.
-
- Posts: 116
- Joined: Wed Mar 11, 2009 7:32 pm
- Location: Obregon, Sonora, Mexico
Re: Mi primer programa en fivelinux (editor dbf )
hola buen dia...
aque correo te lo mando,,,,, ya que ahorita ta fallando el servidor donde lo tengo guardado ( estaba ya esta funcionando lo puede bajar)
tambien este codigo,,, genera un archivo de respaldo donde guarda toda la informacion
saludos
aque correo te lo mando,,,,, ya que ahorita ta fallando el servidor donde lo tengo guardado ( estaba ya esta funcionando lo puede bajar)
tambien este codigo,,, genera un archivo de respaldo donde guarda toda la informacion
saludos
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013