Erro ao executar sc_exec_sql(array)

Bom dia,existe algum limite de dados para a macro sc_exec_sql(array)?,estou adicionando muitos itens no detalhe da nf de entrada e ocorre este erro ao inserir:

ibase_query(): Dynamic SQL Error SQL error code = -104 Unexpected end of command - line 1, column 65535
Script: D:\NetMake\v9\wwwroot\scriptcase\prod\third\adodb\drivers\adodb-ibase.inc.php (371)
Atenção
Erro ao acessar o banco de dados
Dynamic SQL Error SQL error code = -104 Unexpected end of command - line 1, column 65535

veja no WebHelp como usar essa macro, pois estaá usando de forma errada.

Então Haroldo,a questão é que quando é menos itens grava normal.

a macro não aceita um array como parâmetro.

Deve ser uma string.

Se caso as instrulçoes Sql estão em um array, faça:

$sql=[];
$sql[]='instrução sql 1';
$sql[]='instrução sql 2';
$sql[]='instrução sql 3';

foreach($sql as $value) {
     sc_exec_sql($value);
}

sc_commit_trans();

fiz a função desta forma:

	$insert_table  = 'nota_fiscal_detalhe';      // Table name
	$insert_fields = array(   // Field list, add as many as needed
		'id_nf_cabecalho' 		=> $idNotaFiscal,
		'id_produto' 			=> $ID_Produto,
		'ITEM' 					=> "$ITEM",
		'valor_unitario' 		=> "$Preco_un",
		'quantidade' 			=> "$QTD",
		'valor_total' 			=> "$Preco_Total",
		'cfop' 					=> "$CFOP",
		'id_ncm' 				=> "$id_ncm",
		'base_icms' 			=> "$base_icms",
		'taxa_icms' 			=> "$taxa_icms",
		'icms' 					=> "$icms",
		'icms_outras' 			=> "$icms_outras",
		'icms_isento' 			=> "$icms_isento",
		'taxa_desconto' 		=> "$taxa_desconto",
		'desconto' 				=> "$desconto",
		'taxa_issqn' 			=> "$taxa_issqn",
		'issqn' 				=> "$issqn",
		'taxa_pis' 				=> "$taxa_pis",
		'pis' 					=> "$pis",
		'taxa_cofins' 			=> "$taxa_cofins",
		'cofins' 				=> "$cofins",
		'taxa_acrescimo' 		=> "$taxa_acrescimo",
		'acrescimo' 			=> "$acrescimo",
		'taxa_ipi' 				=> "$taxa_ipi",
		'ipi' 					=> "$ipi",
		'cancelado' 			=> "'$cancelado'",
		'cst' 					=> "'$cst'",
		'movimenta_estoque' 	=> "'$movimenta_estoque'",
		'sincronizado'			=> "'$sincronizado'",
		'ecf_icms_st'			=> "'$ecf_icms_st'",
		'nome_caixa' 			=> "$nome_caixa",
		'id_gerado_caixa' 		=> "$id_gerado_caixa",
		'id_empresa' 			=> "$id_empresa",
		'aliquota_icms' 		=> "$aliquota_icms",
		'aliquota_ipi' 			=> "$aliquota_ipi",
		'combustivel' 			=> "$combustivel",
		'hora_sincronizacao' 	=> "'$hora_sincronizacao'"
	);

	$insert_sql = 'INSERT INTO ' . $insert_table
		. ' ('   . implode(', ', array_keys($insert_fields))   . ')'
		. ' VALUES ('    . implode(', ', array_values($insert_fields)) . ');';

	return $insert_sql;

vc disse no tópico inicial:
sc_exec_sql(array)?

Subentende-se que está passando um array com o parâmetro da macro.

talvez me expressei errado,na verdade uso array para juntar os parametros dos produtos e atribuo uma variável

vc pode dar um echo em $insert_sql e postar aqui?
Comente a linha do sc_exec_sql.

infelizmente ultrapassou o limite de texto,tem como enviar um anexo?

acesse este link: http://dontpad.com/smarciofmsistemas

Era um insert somente, não precisava todos:

INSERT INTO nota_fiscal_detalhe (id_nf_cabecalho, id_produto, ITEM, valor_unitario, quantidade, valor_total, cfop, id_ncm, base_icms, taxa_icms, icms, icms_outras, icms_isento, taxa_desconto, desconto, taxa_issqn, issqn, taxa_pis, pis, taxa_cofins, cofins, taxa_acrescimo, acrescimo, taxa_ipi, ipi, cancelado, cst, movimenta_estoque, sincronizado, ecf_icms_st, nome_caixa, id_gerado_caixa, id_empresa, aliquota_icms, aliquota_ipi, combustivel, hora_sincronizacao) VALUES (64, 325, 1, 1.0800000000, 5.0000, 5.40, 5405, 19053100, 0.60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ’ ', ‘060’, ’ ', ’ ', ’ ', 0, 0, 0, 0, 0, 0, ’ ')

Se rodar essa instrução direto no banco, dá erro?

AH, coloque a aplicação em modo debug.

E qual a versão do seu PHP?

executei no ibexpert,adicionou normal,PHP: 7.0.32,tem quer um por um,pois verifico em outra tabela alguns requisitos.

Verifique melhor o codigo inteiro e descobri que é limitação ao executar uma procedure EXECUTE BLOCK AS BEGIN INSERT INTO nota_fiscal_detalhe (id_nf_cabecalho, id_produto, ITEM, valor_unitario…
ao executar a mesma procedure com muitos itens no scriptcase ocorre erro,porém no ibexpert funciona normal a mesma procedure,inclusive fiz um blank separado e copiei a procedure do ECHO e ocasionou o mesmo erro.

o blank:

Consegui contornar o problema fechando a procedure,executar sc_exec_sql,conforme a quantidade maxima de registros e depois abrindo a procedure e fechando no final,