Olá
Estou usando uma aplicação de formulário mestre/detalhe para importar arquivo txt para inserção no banco de dados, acontece que após a leitura do arquivo txt ele insere juntamente com as linhas do arquivo mais um registro com novo id. Segue código do evento onValidate do form detalhe.
$pathFile = $this->Ini->path_doc . “/” . {arquivo};
$arquivo = fopen($pathFile , ‘r’);
if ($arquivo == false) die(‘Não foi possível abrir o arquivo.’);
while(!feof($arquivo)) {
$linha = fgets($arquivo); // LÊ CADA LINHA
$dados = explode(";",$linha);
$campo1 = $dados[0];
$campo2 = $dados[1];
$campo3 = $dados[2];
$campo4 = $dados[3];
$campo5 = $dados[4];
$campo6 = $dados[5];
$data = $campo4;
$dia = substr($data, 0, 2);
$mes = substr($data, 3, 2);
$ano = substr($data, 6, 4);
$campo4_gravar = $ano."-".$mes."-".$dia;
//$lancamento = {lancamento_id_cartoes};
//echo "<br>$campo4_gravar";
$teste = sc_exec_sql("INSERT into importar_txt(cnpj, inscricaoestadual, cod_ibge, dt_ope, vlr_cartao_cred, vlr_cartao_deb, lancamento_id_cartoes) VALUES ('$campo1', '$campo2', '$campo3', '$campo4_gravar', '$campo5', '$campo6', '{lancamento_id_cartoes}')"); //INSERE CADA LINHA
}
if($teste == true){
echo"Sucesso";}
else{
echo"Erro";}
fclose($arquivo);