All pastes #453111 Raw Edit

Mine

public text v1 · immutable
·published 2007-04-22 19:29 UTC
rendered paste body
Written by blitzrage (untested):


func_odbc.conf:

[COUNT]
prefix=ROW
dsn=my_pgsql_connector
read=SELECT COUNT(*) FROM my_table WHERE foo = '${ARG1}'

[GET]
prefix=ROW
dsn=my_pgsql_connector
read=SELECT foo, bar FROM my_table WHERE foo = '${ARG1}' LIMIT 1 OFFSET ${ARG2}

extensions.conf:

[test]
exten => s,1,Set(X=0)
exten => s,n,Set(MAX=${ROW_COUNT(bar)})      ; will return number of rows
exten => s,n,GosubIf($[${ISNULL(${MAX})} | 0${MAX} < 1]?error_handler,s,1)

; Get the data
exten => s,n,While($[${X} <= ${MAX}])
exten => s,n,Set(ARRAY(FOO_${X},BAR_${X})=${ROW_GET(bar,${X})})
exten => s,n,Set(X=$[${X} + 1])
exten => s,n,EndWhile()

; View the data
exten => s,n,Set(Y=0)
exten => s,n,While($[${Y} <= ${MAX}])
exten => s,n,Verbose(1|FOO_${Y} VALUE: ${FOO_${Y}})
exten => s,n,Verbose(1|BAR_${Y} VALUE: ${BAR_${Y}})
exten => s,n,Set(Y=$[${Y} + 1])
exten => s,n,EndWhile()

exten => s,n,Verbose(1|All done!)
exten => s,n,Hangup()