Compañeros:
Tengo un aplicativo corriendo perfectamente, pero ahora mi cliente me plantea la posibilidad de incorporar una opción nueva en el aplicativo que permita migrar determinadas DBF a ACCESS.
¿ Es posible esto ?
Mil gracias.
LORENZO.
FUNCTION CrtMdb()
LOCAL oCatalog,oTable,oColumn,oKey
IF File('demo.mdb')
FErase('demo.mdb')
ENDIF
//--Crea una nueva base de datos ---
oCataLog:=CreateObject("ADOX.Catalog")
oCataLog:Create("Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Engine Type=4;Data Source=demo.mdb")
//--Crea una nueva tabla----
oTable:=CreateObject("ADOX.Table")
oTable:Name:="Cliente"
//A¤adimos campos a la tabla----
oTable:Columns:Append("CliCod", adInteger, 5 )
oTable:Columns:Append("CliDes", adVarWChar, 30 )
oTable:Columns("CliDes"):Attributes:=adColNullAble //Permitimos valores nulos
//-- Definimos la clave primaria-
oKey:=CreateObject('ADOX.Key')
oKey:Name:= 'CliCod'
oKey:Type:= adKeyPrimary
oKey:RelatedTable:='Prueba'
oKey:Columns:Append("CliCod")
oTable:Keys:Append( oKey )
//-
oCatalog:Tables:Append( oTable )
RETURN NIL
//------------------------
FUNCTION CrtTstDat(nReg) //Crea registros de prueba
LOCAL oCnn,oRs, i,x,cCliDes
DEFAULT nReg:=100
oCnn:=tOleAuto():new("ADODB.connection")
oCnn:open("Provider= MicroSoft.Jet.OLEDB.4.0;Data Source=.\demo.mdb;")
// -- Creamos RecordSet----
oRs:=tOleAuto():New("ADODB.RecordSet")
oRs:CursorLocation := adUseClient
oRs:CursorType := adOpenDynamic
oRs:LockType := adLockOptimistic
oRs:ActiveConnection := oCnn
oRs:Source := "SELECT * FROM CLIENTE"
oRs:Open()
FOR i:=1 TO nReg
cCliDes:=''
oRs:AddNew()
oRs:Fields("CliCod"):Value:=i
FOR x:=1 TO 20
cCliDes+=Chr(HB_RandomInt(65,70))
NEXT
oRs:Fields("CliDes"):Value:=cCliDes
oRs:Update()
NEXT
RETURN NIL
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: Google [Bot] and 92 guests