Autor Tópico: Inclusão de dados em tabela  (Lida 669 vezes)

jfb_augusto

  • Novato
  • *
  • Mensagens: 11
Inclusão de dados em tabela
« Online: Janeiro 07, 2016, 09:38:01 am »
Bom dia estou começando o desenvolvimento com scriptcase estava caminhando bem até chegar nessa dúvida.
Criei um botão em um formulário de controle a intenção é gravar os dados em uma tabela até ai blz, quando executo
preenchendo a tela somente com numeros inclui blz mas quando preencho campo descrição com letras ele dá erro
alguém já passou por isso.Segue a rotina abaixo, Obs criei os campos codientrada/descrientrada/absentra1 como texto
$insert_table  = 'TBLMOV';      // Table name
$insert_fields = array(   
   'CODINFENTRADA'    => "[codientrada]", 
    'DESCRINFENTRADA'  => "[descrientrada]",
    'qtdmov'          => "[qtdentrada]",
    'OBSNFENTRADA'     => "[obsentra1]",
     'datamov'          => "'06/01/2016'",
   'DATAEMISSAO'       => "'06/01/2016'",
   'customov'       => "[vlrentrada]",
   'coditem'       => "0",
 );

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

sc_exec_sql($insert_sql);

Thyago Brasil

  • Expert
  • *****
  • Mensagens: 884
  • Crê no Senhor Jesus e será salvo tu e tua família
    • www.brasdesign.com.br
    • Email
Re:Inclusão de dados em tabela
« Responder #1 Online: Janeiro 07, 2016, 10:30:30 am »
Coloque no modo debug e veja o insert que está fazendo mas provavelmente deve estar faltando aspas para inserir a descrição
Thyago Brasil
Desenvolvedor Web
Site: http://www.brasdesign.com.br

SC 5.02/SC 8.1

flaviomorais

  • Avançado
  • ****
  • Mensagens: 348
    • Email
Re:Inclusão de dados em tabela
« Responder #2 Online: Janeiro 07, 2016, 10:54:38 am »
campos texto precisam estar delimitados por aspas


Bom dia estou começando o desenvolvimento com scriptcase estava caminhando bem até chegar nessa dúvida.
Criei um botão em um formulário de controle a intenção é gravar os dados em uma tabela até ai blz, quando executo
preenchendo a tela somente com numeros inclui blz mas quando preencho campo descrição com letras ele dá erro
alguém já passou por isso.Segue a rotina abaixo, Obs criei os campos codientrada/descrientrada/absentra1 como texto
$insert_table  = 'TBLMOV';      // Table name
$insert_fields = array(   
   'CODINFENTRADA'    => "[codientrada]", 
    'DESCRINFENTRADA'  => "[descrientrada]",
    'qtdmov'          => "[qtdentrada]",
    'OBSNFENTRADA'     => "[obsentra1]",
     'datamov'          => "'06/01/2016'",
   'DATAEMISSAO'       => "'06/01/2016'",
   'customov'       => "[vlrentrada]",
   'coditem'       => "0",
 );

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

sc_exec_sql($insert_sql);

Jailton

  • Expert
  • *****
  • Mensagens: 2026
Re:Inclusão de dados em tabela
« Responder #3 Online: Janeiro 07, 2016, 01:00:45 pm »
DICA:
Variáveis globais sempre definir elas com [glo_ antes exemplo [glo_vlrentrada], isso para não correr o risco do SC achar que seus campos normais das tabelas, são
as mesmas variáveis, e variáveis locais usar $vlrentrada_x também para ele não misturar com as das tabelas.

Eu prefiro sempre fazer assim os SQL no padrão do próprio banco, caso eu tenha que checar eles com echo, é só copiar e jogar na base pra testar:
$Valor_Pagto_x=$Qtde_x*$ValorUnitario_x;


Código: [Selecionar]
INSERT (METÓDO NOVO DO SC, Melhor para facilitar inclusão)

$insert_table  = 'TBLMOV';  // Nome da Tabela
$insert_fields = array(   
'CODINFENTRADA'    => "[glo_codientrada]", 
'DESCRINFENTRADA'  => "[glo_descrientrada]",
'qtdmov'           => "[glo_qtdentrada]",
'OBSNFENTRADA'     => "[glo_obsentra1]",
'datamov'          => "'2016-01-06'",
'DATAEMISSAO'      => "'2016-01-06'",
'customov'         => "[glo_vlrentrada]",
'coditem'          => "0"
);

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

sc_exec_sql($insert_sql);

“Se debugar é a arte de remover bugs, programar é a arte de inserí-los.” (Donald E. Knuth)
« Última modificação: Janeiro 07, 2016, 01:22:51 pm por Jailton »
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

jfb_augusto

  • Novato
  • *
  • Mensagens: 11
Re:Inclusão de dados em tabela
« Responder #4 Online: Janeiro 08, 2016, 12:41:07 pm »
Obrigado galera, era isso mesmo, dificuldades de iniciante. Apanhei um pouco mas funcionou!!!!