Boa tarde...
 
Estou enfretando o seguinte problema, quando tento executar o prepareandexecute dentro do fetchnext ele me retorna o erro 20055 conex�o ocupada com resultado de outro hstmt.
 
Ja tive esse erro (20055) em outras aplica��es e resolvi simplesmente n�o utilizando sqlimmediate e "isolando" os cursores, mas neste caso eu nem utilizo sqlimmediate e os cursores est�o isolados.

N�o estamos conseguindo estabelecer um crit�rio para evitar esse erro, ja mandei algumas mensagens anteriormente para lista e recebi informa��es bastantes �teis, mas eu n�o consegui formar uma id�ia clara do porque do erro e nem como evita-lo, alguma dica?

Obs: Esse erro ocorre quando estou dentro de uma estrutura de relat�rio (SAM_ReportFetchNext), em qualquer outro lugar na aplica��o a utiliza��o de dois cursores endentados funciona perfeitamente.
 
Desde j� agrade�o.
 
Utilizo Centura 1.1 e sqlserver 2000
 
On SAM_Create
            Call SqlConnect( shMapGerEtq )
            Call SqlSetIsolationLevel( shMapGerEtq, 'RL' )
            Call SqlSetParameter( shMapGerEtq, DBP_AUTOCOMMIT, FALSE, '' )
            Call SqlSetParameter( shMapGerEtq, DBP_PRESERVE, TRUE, '' )
            Call SqlSetResultSet( shMapGerEtq, TRUE )
            !
            Call SqlConnect( shAux )
            Call SqlSetIsolationLevel( shAux, 'RL' )
            Call SqlSetParameter( shAux, DBP_AUTOCOMMIT, FALSE, '' )
            Call SqlSetParameter( shAux, DBP_PRESERVE, TRUE, '' )
            Call SqlSetResultSet( shAux, TRUE )
 
On SAM_ReportStart
           Call SqlPrepare( shMapGerEtq, ' comando select '
 
On SAM_ReportFetchInit
           Call SqlExecute( shMapGerEtq )                   
 
On SAM_ReportFetchNext
            If SqlFetchNext( shMapGerEtq, vnErroRpt )
                    Call SqlPrepareAndExecute( shAux, '
                              SELECT
                                        DCRPRD
                               FROM
                                        TABELA056
                               INTO
                                        :vsDcrPrd
                               WHERE
                                        CODPRD =:vnCodPrd ' )
                    !    
                    Call SqlFetchRow( shAux, vnRow, vnErro )
                    !
                    Return TRUE
 

Responder a