Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

EltonjRamos

entrada de nota fiscal

Recommended Posts

Bom dia pessoal, estou desenvolvendo um sistema e dentre seus módulos preciso de permitir entrada de notas fiscais, a ideia é a seguinte:

a pessoa digita todos os dados da nota como data de emissao, valores dos impostos, descontos acrescimos, depois:

ela precisa digitar os itens da nota, como os itens das notas são variados, (cada nota tem um total de itens) não posso colocar x linhas fixas para digitar estes itens.

 

até ai tudo bem, o problema começa agora,

preciso clicar em um botão e este adicionar uma linha contendo os campos produto, quantidade, e valor unitario, até consegui criar isso más não estou conseguindo referencia-los via javascript. segue codigo:

 

Agradeço a quem possa ajudar.

 

<html>
<head>
<script type="text/javascript">
//FUNÇÃO PARA INSERIR LINHAS NA TABELA HISTORICO

function new_line()
{

  //PEGA A TABELA PELO ID

  var tabela = document.getElementById('tbitens'); 

  // PEGA A PRIMEIRA LINHA DA TABELA

  var corpo = tabela.tBodies[0];	

  // CRIA UMA NOVA LINHA O -1 significa final da tabela.

  var nova_linha = corpo.insertRow(-1);

  //CRIA UMA NOVA CELULA NA LINHA CRIADA

  var cc0 = nova_linha.insertCell(0);     
  cc0.innerHTML = '<td>Codigo:<input type="text" name="cod0" id="cod0" maxLength="2" size="2" onBlur="carrega_produto(this.id,this.value)"/></td>';

  var dc0 = nova_linha.insertCell(1);     
  dc0.innerHTML = '<td><input type="text" name="desc0" id="desc0"  maxLength="60" size="40"/></td>';

  var qc0 = nova_linha.insertCell(2);     
  qc0.innerHTML = '<td>QTD:<input type="text" name="qtd0" id="qtd0"  maxLength="5" size="5"/></td>';

  var vuc0 = nova_linha.insertCell(3);     
  vuc0.innerHTML = '<td>V. Unitario:<input type="text" name="vuc0" id="vuc0"   maxLength="10" size="10"size="8"/></td>';

  var vtc0 = nova_linha.insertCell(4);     
  vtc0.innerHTML = '<td>V Total:<input type="text" name="vtc0" id="vtc0"  maxLength="10" size="10"/></td>';
}

</script>
</head>
<body bgcolor="999999">
<form name="form1" id="form1" method="post" action="">
<table id='tbitens' width='95%' border='1' cellspacing='0' cellpading='0'>
 <tr>
   <td></td>
   <td></td>
   <td></td>
   <td></td>
   <td><input type="button" name="btnew" id="btnew" value="Novo Item" onClick="new_line();"></td>
 </tr>
 <tr>
   <td>Codigo</td>
   <td>Descricao</td>
   <td>Quantidade</td>
   <td>Valor Unitario</td>
   <td>Valor Total</td>
 </tr>
</table>
</form>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta colocar os nomes como array exemplo

 

o seu esta assim.

 

 

   vtc0.innerHTML = '<td>V Total:<input type="text" name="vtc0" id="vtc0"  maxLength="10" size="10"/></td>';

 

e deveria ficar assim

 

 

   vtc0.innerHTML = '<td>V Total:<input type="text" name="vtc[]" id="vtc0"  maxLength="10" size="10"/></td>';

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá fernando agradeço sua atenção, não sou bom com arrays más vou tentar fazer da forma que sugeriu, obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom no php usa foreach, mas TENTA AI quando enviar o form, da um print_r pra ver se esta indo os dados como queria.

 

qualquer dúvida manda mensagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Fernando, ainda não consegui implementar, Poderia me ajudar me mostrando um formulário dinamico simples e pegando os dados do outro lado via php?

 

des de já agradeço sua boa vontade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta isso :

 

<?php
if($_SERVER['REQUEST_METHOD']=="POST"){
/**
você tem um array assim

Array
(
   [nome] => Array
       (
           [0] => dbbfg
           [1] => bddfdbf
       )

   [telefone] => Array
       (
           [0] => gfdgf
           [1] => bbvddfd
       )

   [enviar] => Enviar
)

eu fiz da forma abaixo mas você pode percorrer como achar melhor.
***/
foreach($_POST as  $chave =>$valor){
	if(is_array($valor)){
		foreach($valor as $nome => $valores){
			echo $chave."".$nome." = ".$valores."<br>";
		}
	}
}
}
?>


<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Exemplo</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$('a.remover').live('click',function(){
	  		event.preventDefault();
			$(this).parent().remove();
});
$("a.add").live('click',function(event){
 		event.preventDefault();
	$("#duplicar").clone().insertAfter("#duplicar").append("<a href='#' class='remover'>remover</a>").removeAttr("id").find("input").val("");
});
});

</script>
</head>

<body>
<a href="#" class="add">Adicionar Campos</a>
<form action="" method="post">
<fieldset id="duplicar">
<label>Nome<input type="text" name="nome[]"></label>
<label>Telefone<input type="text" name="telefone[]"></label>
</fieldset>
<input type="submit" name="enviar" value="Enviar">
</form>

</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado Fernando, acredito que agora conseguirei implementar, vou estudar o script, más pelo que vi vai ajudar muito, obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.