Página 1 de 2
Criar número de pedidos "fakes" [Resolvido]
Enviado: 22 Fev 2012, 18:03
por brunobld
Olá pessoal da comunidade.
Eu tinha uma loja em outra plataforma pré-paga que já tem uma base de pedidos bem legal, porém agora estou migrando para o opencart (que me possibilita muito mais!) e os pedidos começam do #1.
O que eu precisava era fazer algo para que ao invés de começar do #1, começar de onde parou na outra. Por exemplo: Pedido #4918
Existe alguma forma de fazer isso sem ser manualmente, fazendo pedido por pedido? Nem que seja criando pedidos "fakes" apenas para aumentar o número mesmo... por exemplo entrar na DB dos pedidos e duplicar esses pedidos feitos?
Seria uma solução que busco, mais pela estética e confiança que passa a numeração de ter uma centena de pedidos e para seguir a lógica de pedidos da loja "antiga".
Obrigado e abraços!
Re: Criar número de pedidos "fakes"
Enviado: 22 Fev 2012, 18:24
por Renato Frota
roda esse sql:
Código: Selecionar todosALTER TABLE `prefixo_order` AUTO_INCREMENT =PROXIMO_PEDIDO;
trocando prefixo_ pelo prefixo das suas tabelas, obviamente, e PROXIMO_PEDIDO pelo numero que deseja ter na proxima compra
exemplo:
Re: Criar número de pedidos "fakes"
Enviado: 23 Fev 2012, 11:03
por brunobld
Muito obrigado pela ajuda Renato!
Abraços!
Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 23 Fev 2012, 19:37
por brunobld
Só um adendo...
O caminho que o Renato demonostrou funcionou perfeitamente. De qualquer forma, fuçando depois acabei "descobrindo" também um modo bem simples:
Entrando no painel PHPMyAdmin do meu cPanel localizei a tabela que continha o nome de ORDERS, entrando nela, havia todos pedidos testes que já tinha feito, peguei o último (no caso o 10) e editei ele, renomeando o Order_ID para 2000, por exemplo. Salvei.
A partir disso, feito um novo pedido, o sistema começa automaticamente a partir do 2001.
Apenas para mostrar um novo caminho, espero ajudar.
Sou novo nesse mundo do OpenCart e estou gostando muito da plataforma. Com certeza, irei ajudar com o que eu puder a comunidade assim que for ganhando experiência e entendendo melhor a plataforma.
Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 23 Fev 2012, 20:25
por Renato Frota
mudar o id da ultima order vai afetar seu sistema, pois outros registros em outras tabelas são amarrados no id dessa order que vc mudou.
especialmente as próprias order_status, order_history, order_option, etc.
esse pedido aí vai dar um rolo no seu banco se você deixar desse jeito

Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 24 Fev 2012, 01:04
por brunobld
Renato, esse pedido no caso, pouco importa, só fiz como teste mesmo. Até entendi o porque que vai dar um rolo... mas os outros pedidos que vierem depois dele, também terão esse rolo? Ou seria só pra esse que eu alterei?
De qualque forma, valeu a dica!
Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 24 Fev 2012, 02:16
por Renato Frota
Acho que só esse. Não conheço nenhuma função que fique lendo dados dos pedidos. Em todo caso, recomendo voltar para 10 no BD; e deletá-lo pelo painel, se não é importante.
-
Já que você falou no phpmyadmin e que a maioria das hospedagens oferece ele, complementando minha dica anterior: a troca do número da próxima venda pode ser feita no phpmyadmin clicando em Operações, lá nas guias do topo. Vai abrir um formulário com algumas informações da tabela. Uma delas, é o número do próximo auto_increment. É só trocar ali, mais prático que rodar o SQL.
mas, só por desencargo... você achou o seu método mais fácil do que a execução do SQL que eu sugeri? no próprio phpmyadmin tem a função de executar um script SQL!
Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 24 Fev 2012, 11:20
por brunobld
Pra ser bem sincero com você, eu não tenho noção nenhuma do OpenCart, comecei agora e sou mais Designer do que Programador. Minha experiência em programação é editando e instalando scripts prontos, nada muito a fundo... mas como sempre fucei bastante, então tenho um leve conhecimento do php e entendo a lógica dele pelo menos. Fazia muito tempo que não usava SQL, ai quando vc falou "roda a SQL" eu pensei "caralho, como faço isso?", ai fui fuçar e cheguei na conclusão que te falei ai, testei e funcionou. Pra mim acabou sendo mais simples e meio que "automatico", e agora dps de ficar esses dias todo fuçando bastante, a sua primeira solução tb já é mais óbvia e fácil!
Mas o que vc falou é verdade. A minha solução caso vc queira deixar o pedido válido, é falsa, não funciona e vai causar um puta rolo.
Pra mim só funcionou porque os pedidos eram testes e os produtos ilusórios, então o que acaba valendo são os novos pedidos com os novos números (IDs) e acabam que não são afetados. Até porque depois de gerar um novo, eu posso apagar os antigos (1, 2, 3, 4, 5)...
To fazendo os últimos testes hoje pra tentar abrir a loja amanhã em um funcionamento para o público.
Valeu pela troca de informações e pela paciência também!
Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 24 Fev 2012, 12:25
por Renato Frota
brunobld escreveu:Pra mim só funcionou porque os pedidos eram testes e os produtos ilusórios, então o que acaba valendo são os novos pedidos com os novos números (IDs) e acabam que não são afetados. Até porque depois de gerar um novo, eu posso apagar os antigos (1, 2, 3, 4, 5)...
A questão é que ao apagar o pedido 2000 (que você alterou manualmente) o script vai ter um comportamento não previsto (ele pode travar, ou pode rodar normal, mas deixar os registos ligados à compra número 10 - que era o ID anterior dela - literalmente "sobrando" no banco de dados). Isso vai gerar estatísticas com erros e, talvez, até resultado conflitante em algum módulo que busque dados em duas tabelas, esperando que a tupla do produto 10 esteja lá, por ter lido o ID 10 na outras tabelas...

Re: Criar número de pedidos "fakes" [Resolvido]
Enviado: 24 Fev 2012, 15:05
por brunobld
Blz renato, realmente pode dar algum problema!
Deletei todas as orders e fiz a função que você disse:
Renato Frota escreveu:Já que você falou no phpmyadmin e que a maioria das hospedagens oferece ele, complementando minha dica anterior: a troca do número da próxima venda pode ser feita no phpmyadmin clicando em Operações, lá nas guias do topo. Vai abrir um formulário com algumas informações da tabela. Uma delas, é o número do próximo auto_increment. É só trocar ali, mais prático que rodar o SQL.
Agora rodando sem margem para erros. Valeu!