Para implementar el método bindParam y bindColumn de una clase que estoy haciendo necesito saber si hay alguna manera de guardar una referencia a un item que se crea como una variable a nivel PRG.
Y que luego voy a necesitar modificar su valor desde C o tomar su valor sin volver a pasarlo como parámetro de una función.
Tal vez con un ejemplo se ilustre un poco mejor:
- Code: Select all Expand view
//A nivel de PRG:
local miVariable1
local miVariable2
oStmt:bindParam( 1, @miVariable1 )
oStmt:bindParam( 2, @miVariable2 )
// Ahora quiero que cuando asigne un valor a miVariable1 o miVariable2 ese valor se visible en C sin tener que pasar nuevamente la variable:
miVariable1 := "Valor 1"
miVariable2 := 23
oStmt:execute() // Esto llama a una función hecha en c que necesita de las variable asociadas con el método bindParam
miVariable1 := "Valor 2"
miVariable2 := 32
oStmt:execute()
- Code: Select all Expand view
// A nivel de C
static HB_ERRCODE bindParam( pHDOSTMT stmt, PHB_ITEM pParam, PHB_ITEM pVariable )
{
pHDO_BIND pParameter = (pHDO_BIND) hb_xgrab( sizeof( HDO_BIND ) ); // Esto es una estructura con un miembro que es el puntero a la variable del PRG
if( pParameter )
{
pParameter->pParam = pParam;
pParameter->pVariable = pVariable;
No sé si me he explicado bien
PD: Feliz año nuevo