in SqlServer, I'm trying to populate two child tables in this way:
I execute 'tblMain' population and, for each row fetched in tblMain, a tblChild population is executed.
This code
Code: Select all
Child Table: tblMain
Contents
Column: colN_ID_NOMI
Column: colC_RAGSOC1
Functions
Function: Populate
Local variables
String: sSelect
Number: nResultSet
Number: nInd
Actions
Set sSelect = "SELECT n_id_nomi, c_ragsoc1 INTO :colN_ID_NOMI, :colC_RAGSOC1 FROM is_t_nomi"
If CursorConnect( hCursor )
Call SalTblPopulate( hWndForm, hCursor, sSelect, TBL_FillAll )
Window Variables
Sql Handle: hCursor
Message Actions
On SAM_FetchRowDone
Call tblChild.Populate( )
!
Child Table: tblChild
Contents
Column: colN_COD_CLIFOR
Functions
Function: Populate
Local variables
String: sSelect
Number: nResultSet
Number: nInd
Actions
Set sSelect = "SELECT n_cod_clifor INTO :colN_COD_CLIFOR FROM is_t_clifor WHERE n_id_nomi = tblMain.colN_ID_NOMI"
If CursorConnect( hCursor )
Call SalTblPopulate( hWndForm, hCursor, sSelect , TBL_FillAll )
Window Variables
Sql Handle: hCursor
...
Function: CursorConnect
Description:
Returns
Boolean:
Parameters
Receive Sql Handle: hSqlIn
Static Variables
Local variables
Actions
If hSqlIn
Return TRUE
!
Call SqlCreateStatement (SqlOleDbSession, hSqlIn)
!
Call SqlSetResultSet( hSqlIn, TRUE )
Call SqlSetParameter( hSqlIn, DBP_AUTOCOMMIT, FALSE, '' )
!
Return TRUE
!
To eliminate the error I have to comment DBP_AUTOCOMMIT setting...
Code: Select all
Function: CursorConnect
Description:
Returns
Boolean:
Parameters
Receive Sql Handle: hSqlIn
Static Variables
Local variables
Actions
If hSqlIn
Return TRUE
!
Call SqlCreateStatement (SqlOleDbSession, hSqlIn)
!
Call SqlSetResultSet( hSqlIn, TRUE )
! Call SqlSetParameter( hSqlIn, DBP_AUTOCOMMIT, FALSE, '' )
!
Return TRUE
!