Nueva versi贸n adordd.prg publicado https://github.com/AHFERREIRA/adordd.git
Por favor, eche un vistazo en el archivo readme.md.
saludos
Antonio H. Ferreira
Antonio H Ferreira
Nueva versi贸n adordd.prg publicado https://github.com/AHFERREIRA/adordd.git
Por favor, eche un vistazo en el archivo readme.md.
saludos
Antonio H. Ferreira
Nueva versi贸n adordd.prg publicado https://github.com/AHFERREIRA/adordd.git
Por favor, eche un vistazo en el archivo readme.md.
saludos
Antonio H. Ferreira
Error: Unresolved external '_HB_FUN_GETADOCONN'
Saludos,
Carlos Gallego
*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***
Carlos,
Esa funci贸n parece estar en el propio adordd.prg:
FUNCTION hb_GetAdoConnection()//supply app the con object
RETURN oConnection
Nueva version adordd https://github.com/AHFERREIRA/adordd.git
delete record
BlankRec () // esto no funcionar谩 bien comentarla o colocarlo antes de eliminar.
delete all // esto no funcionar谩 a partir de aqu铆
while ....
聽if lCondici贸n // cambiar la condici贸n de no
聽聽聽recall registro // eliminar cada registro aqu铆
聽endif
endhb_GetAdoConnection (): Ejecutar ("CREATE VIEW cView ....")
sele 0
uso cView
Browse ()use table VIA "DBFCDX"
copy to SQLTABLE VIA "ADORDD"Saludos
Cuando lo compilo con Harbour me da error en estas lineas en el ADORDD.prg
STATIC t_cDataSource
STATIC t_cEngine
STATIC t_cServer
STATIC t_cUserName
STATIC t_cPassword
STATIC t_cQuery
STATIC oConnection
Dice Error E0004 STATIC Declaration Follow Executable Statement
Ruben,
Por favor, ponga todos los STATIC antes #ifndef XHARBOUR
Estoy trabajando con xHarbour.
Saludos
Antonio H Ferreira
Gracias. Antonio Ferreira H
Por tu informacion.
Tu no lo has probado con Harbour.
Segun los ejemplo que tu anexas se puede manejar archivos DBF
Tengo una duda, lo he visto en varios codigos.
que quiere decir
ANNOUNCE ADORDD
Me gustarias si me puedes aclarar el concepto , que no lo tengo muy claro,
ANNOUNCE --> Que Hace
ADORDD --> Se refiere a Una funciona a que apunta.
Gracias si me puedes aclarar,
REQUEST ADORDD, ADOVERSION, RECSIZE
RddRegister( "ADORDD",1 )
RddSetDefault( "ADORDD" )
SET ADO DEFAULT RECNO FIELD TO "HBRECNO"
SET AUTOPEN OFF
SET ADO FORCE LOCK OFF
SET ADO DEFAULT DATABASE TO "LUCASTABLE.MDB" ENGINE TO "ACCESS" USER TO "" PASSWORD TO ""Gracias, Lucas
Por tu respuesta , quedo claro, carga el ADORDD, Es lo que necesitaba saber, ya que tenia duda el el funcionamiento.
Google translator:
Por favor, disculpe el c贸digo desalineada de aodrdd.prg pero yo s贸lo doy cuenta ahora con Lucas.
Estoy usando Notepad ++ y aunque el c贸digo est谩 perfectamente alineado no parece que eso no es el caso de MED Que la mayor铆a de ustedes est谩n utilizando.
Tan pronto como me puedo voy a pasar a trav茅s de MED conseguirlo todo alineado y Ill publicada.
Nueva versi贸n ADORDD en https://github.com/AHFERREIRA/adordd.git
El c贸digo se alinea y limpio.
Por favor, lea atentamente readme para configurar su aplicaci贸n para utilizar ADORDD.
Y por favor no se olvide de donar a la organizaci贸n humanitaria 20 Euros.
Buen dia...
Alguien ya desarrollo una utilidad para migrar la base datos, para mi caso seria desde dbfcdx con sus 铆ndices
con xhb.com usamos esta rutina :
Function upload( cBaseDir, cPrefix, cDriver, cRDD )
聽 聽LOCAL aFiles, aStruct, aFile, cFile, aTemp
聽 聽LOCAL nCanArc := 0, nConArc := 0
聽 聽/* upload files */
聽 聽aFiles := directory( cBaseDir + "*.dat" ) 聽// dejar en minuscula
聽 聽nCanArc := len(aFiles)
聽 聽For each aFile in aFiles
聽 聽 聽 IF SELECT("ORIG") <> 0
聽 聽 聽 聽 聽CLOSE ORIG
聽 聽 聽 ENDIF
聽 聽 聽 cFile := strtran(lower( alltrim( cPrefix + aFile[ F_NAME ] ) ),".dat","") 聽// dejar en minuscula
聽 聽 聽 //dbUseArea( .T., cDriver, cBaseDir + aFile[ F_NAME ], "ORIG" )
聽 聽 聽 IF !lUsaTab( cBaseDir ,aFile[ F_NAME ],"ORIG",{},.T.,NIL,cDriver)
聽 聽 聽 聽 聽mymen("Error. Tabla")
聽 聽 聽 聽 聽return
聽 聽 聽 endif
聽 聽 聽 //? " 聽 Uploading...", cFile, "(" + alltrim(str(ORIG->( lastrec() ) ) ), "records)"
聽 聽 聽 aStruct := ORIG->( dbStruct() )
聽 聽 聽 ORIG->( dbCloseArea() )
聽 聽 聽 dbCreate( cFile, aStruct, cRDD )
聽 聽 聽 dbUseArea( .T., cRDD, cFile, "DEST", .F. )
聽 聽 聽 Append from (cBaseDir + aFile[ F_NAME ]) VIA cDriver
聽 聽 聽 dbUseArea( .T., cDriver, cBaseDir + aFile[ F_NAME ], "ORIG" )
聽 聽 聽 If !empty( ordname(1) )
聽 聽 聽 聽 聽//? " 聽 Creating indexes:", cFile
聽 聽 聽 EndIf
聽 聽 聽 n:=1
聽 聽 聽 while .t.
聽 聽 聽 聽 聽if empty( ordname(n) )
聽 聽 聽 聽 聽 聽 exit
聽 聽 聽 聽 聽endif
聽 聽 聽 聽 //? " 聽 聽 聽=>", ordname(n),",", ordkey(n),",", ordfor(n)
聽 聽 聽 聽 DEST->(ordCondSet( orig->(ordfor(n)),,.t.,,,, nil, nil, nil, nil,, nil, .F., .F., .F., .F.))
聽 聽 聽 聽 DEST->(dbGoTop())
聽 聽 聽 聽 DEST->(ordCreate(,orig->(OrdName(n)), orig->(ordKey(n)), &("{||"+orig->(OrdKey(n))+"}") ))
聽 聽 聽 聽 ++n
聽 聽 聽 enddo
聽 聽 聽 ORIG->( dbCloseArea() )
聽 聽 聽 DEST->( DBCOMMIT() )
聽 聽 聽 DEST->( dbCloseArea() )
聽 聽 聽 ++nConArc
聽 聽Next
Return
Gracias
Johnson Russi