8 de febrero de 2018

Conocer la estructura de una entidad remota usando ADO

Una forma de obtener la misma funcionalidad de SQLColumns, pero a traves de OLEDB/ADO.

Usando las funciones SQLColumns() y SQLTables() podemos obtener esos datos, pero si no fuera posible hacerlo via ODBC (y por lo tanto hacerlo con dicha función), puedes optar por hacerlo con ADO/OLEDB.

#Define adSchemaCatalogs 1
#Define adSchemaColumns 4
#Define adSchemaTables 20

Local oConn As 'ADODB.Connection'
oConn = Createobject('ADODB.Connection')
oConn.Open( "Provider=sqloledb;Data Source=(local);"+;
  "Initial Catalog=Pubs;Integrated Security=SSPI" )
rstSchema = oConn.OpenSchema(adSchemaColumns)
ShowMe(rstSchema)
rstSchema.Close
oConn.Close

Function ShowMe
  Lparameters toRecordset
  oForm = Createobject('myForm', toRecordset)
  oForm.Show
  Read Events
Endfunc

Define Class myform As Form
  Height = 450
  Width = 750
  Name = "Form1"

  Add Object hflex As OleControl With ;
    Top = 10, Left = 10, Height = 430, Width = 730, Name = "Hflex", ;
    OleClass = 'MSHierarchicalFlexGridLib.MSHFlexGrid'

  Procedure Init
    Lparameters toRecordset
    This.Caption = "Recordset"
    This.hflex.Datasource = toRecordset
    This.hflex.AllowUSerResizing = 3
  Endproc
  Procedure QueryUnload
    Clear Events
  Endproc
Enddefine

Çetin Basöz
MS Foxpro MVP, MCP

No hay comentarios. :

Publicar un comentario

Los comentarios son moderados, por lo que pueden demorar varias horas para su publicación.