Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Senhores, bom dia.
Seguinte, fiz um script php que importa dados para o MySQL.
Nessa planilha existem três colunas: VL1, VL2 e VL3.
ou seja, VL1 - VL2 = VL3.
O problema é que os dados vem meio inconsistentes, às vezes.
Tipo,
imaginemos a seguinte situação normal
produto1: 10,00 | 6,00 | 4,00
Essa é uma uma situação normal, onde subtraio 10 menos 6 que é igual a 4. Até aí tudo bem.
Só que, na planilha em excel, os dados vem meio fora de ordem.
Tipo:
produto1: 10,00 | 0 | 0
0 6 | 4
ou seja, o corrreto é subtrair 10-4 e não 10-0.
O problema é que vem assim da planilha que nos é fornecida.
Sei que banco é igual a matrizes, tipo COLUNA e LINHA.
Eu não sei se isso é possível, mas será que existem uma forma de realizarmos essa operação matemática?
Na verdade, uso um INSERT.
tipo...
INSERT INTO tabela (produto, descricao, vl1, vl2, vl3)VALUES(".values[0].", ".values[1].", ".values[2].", ".values[3].", ".values[4].");
É assim que importo a planilha excel para o banco de dados.
vli vlp vlc7 vlg
335,53 335,53 0 335,53
111,94 111,94 0 111,94
0 0 115,7
0 0 19,3 0
No exemplo acima deve-se subtrair 335,53 - 115,7 e não o zero. O problema é que a planilha vem assim.
ou seja, vli - vlp = vlg
sendo que os dois últimos valores de vlc7 deveriam estar na duas primeiras linhas.
Como eu dissera, já vem assim da planilha.
Imagina ficar editando várias linhas porque causa do desalinhamento... muito ruim.
Acumule os valores em variáveis ate "quebrar" , faça a operação com as variaveis
Motta, teria que como dá um pequeno exemplo? Porque eu pensei em variáveis também. Contudo não sei como proceder nessa ideia.
Rapaz , não trabalho com MySql , mais creio que vc acha exemplo na rede.
Pesquisei sobre o assunto.
Por exemplo, como vc faria no SQL?
Como vc faria no SQL?
Posso adaptar.
Não conheço este mecanismo de importação
Mas a lógica básica e acumular uma variável até "quebrar"
Este "até quebrar" é que não estou conseguindo compreender.
Motta, o que quer dizer "até quebrar"?
Creio que não seria isto pois não se importa linha a linha , esquece teria de ser outra abordagem.
Pensando nisto.
Seria um tipo de estoque, onde os campos podem ser acumulativos? Não consegui compreender... =/
Supus uma importação que ocorre linha a linha , mas não creio que seja isto que ocorra.
Qual comando você usa pra jogar os valores no banco?