hi,
thx for Tip.
i can "see" 3rd Parameter
Code: Select all
PHB_ITEM pInfo = hb_itemNew( hb_param( 3, HB_IT_ANY ) );
so i guess it work ... but how
Code: Select all
#include "hmg.ch"
#include "Dbstruct.ch"
#include "DbInfo.ch"
#require "hbpgsql"
#require "rddsql"
#command USE <(db)> [VIA <rdd>] [ALIAS <a>] [<nw: NEW>] ;
[<ex: EXCLUSIVE>] [<sh: SHARED>] [<ro: READONLY>] ;
[CODEPAGE <cp>] [CONNECTION <nConn>] [INDEX <(index1)> [, <(indexN)>]] => ;
dbUseArea( <.nw.>, <rdd>, <(db)>, <(a)>, ;
if(<.sh.> .or. <.ex.>, !<.ex.>, NIL), <.ro.>, [<cp>], [<nConn>] ) ;
[; dbSetIndex( <(index1)> )] ;
[; dbSetIndex( <(indexN)> )]
nConnectionHandle := dbPGConnection( cServer + ";" + cDataBase + ";" + cUser + ";" + cPassWord )
USE "SELECT * FROM TEST ;" ALIAS TESTPG NEW VIA "pgrdd" CONNECTION nConnectionHandle
ChangeType(1)
Code: Select all
PROCEDURE ChangeType(nWa)
LOCAL aStruct := DBSTRUCT()
LOCAL aWAData := USRRDD_AREADATA(nWa)
LOCAL ii,iMax, cName, nPosi, cType
LOCAL oTPQ, aPG, xRet
ALTD()
oTPQ := aWAData[1]
aPG := ACLONE( oTPQ:aStruct )
iMax := LEN(aStruct)
FOR ii := 1 TO iMax
cName := aStruct[ii][DBS_NAME]
nPosi := ASCAN(aPG, {|e| UPPER(e[1]) = cName } )
IF nPosi > 0
cType := aPG[nPosi][2]
xRet := DbFieldInfo( DBS_TYPE , ii, cType )
ENDIF
NEXT
aStruct := DBSTRUCT()
RETURN
but Type have not change
