|
|
Olá,
Sei que muitos lojistas que utilizam o sistema da Locaweb devem arrancar os cabelos quando precisam mudar as categorias de um produto cadastrado, pois o sistema não permite essa troca. Ou seja, é necessário apaga-lo para depois cadastrar novamente, e fazer isso para vários produtos não é nada rápido. Baseado neste problema segue uma modificação para ser aplicado em sua lojaExemplo:
Troque o seguinte trecho em vermelho do arquivo ADM_altera_produto.asp:
OBS: NÃO COPIE E COLE OS CÓDIGOS DO POST! ESTES SÃO APENAS PARA REFERÊNCIA. UM DOS PROBLEMAS QUE VAI DAR SE TENTAR COPIAR O CÓDIGO DO POST É COM RELAÇÃO AS ASPAS, QUE NO POST ESTÃO ASSIM ” POR PADRÃO. PARA EVITAR ERROS DIGITE AS ASPAS .
</tr>
<tr class=”Linha1Tabela”>
<td align=”right”><B> CATEGORIA:</B></td>
<td readonly><%Call Cria_Combo_Categoria_ADM( codigo_categoria,”disabled”,varLang)%></td>
</tr>
Colocar este trecho em vermelho:
<tr class=”Linha1Tabela”>
<td align=”right”><B> CATEGORIA:</B></td>
<td ><%Call Cria_Combo_Categoria_ADM( codigo_categoria,”enabled”,varLang)%></td>
</tr>
No arquivo ADM_InsereAltProduto.asp troque o trecho em vermelho :
End If
End If
codigo_categoria = myFileUpload.Form(“codigo_categoria”)
‘Definição da mensagem de resposta da ação administrativa (acao_admin)
If myFileUpload.form(“acao_admin”) = “novo registro” Then
Pelo seguinte trecho em vermelho:
End If
End If
categoria_temp = Split(myFileUpload.Form(“codigo_categoria”), “,”)
codigo_categoria = categoria_temp(0)‘Definição da mensagem de resposta da ação administrativa (acao_admin)
If myFileUpload.form(“acao_admin”) = “novo registro” Then
Ainda no arquivo ADM_InsereAltProduto.asp adicione o trecho em vermelho na mesma localização em sua loja :
RS_Produto.LockType = 3
‘Se a se acao_admin for alterar registro
If myFileUpload.Form(“acao_admin”) = “alterar registro” Then‘Se existir um codigo chave para este registro, indica que categoria está cadastrada com idioma da consulta
If codigo_produto <> “” And Replace(VetorCodigoChave,”,”,”") <> 0 Then
RS_Produto.Open “SELECT codigo_chave, codigo_produto, codigo_categoria, codigo_subcategoria, codigo_marca, codigo_produto_loja, nome_produto, descricao_produto, autor, codigo_isbn, tamanhos, cores, preco_base, preco_unitario, desconto, frete_gratis, sul, sudeste, centro, norte, nordeste, moeda, quantidade_produto, img_produtoPQN, img_produtoGRD, img_produto_adic01PQN, img_produto_adic01GRD, img_produto_adic02PQN, img_produto_adic02GRD, img_produto_adic03PQN, img_produto_adic03GRD, peso, frete, destaque_vitrine, promocao, data_inicio, data_fim, meta_keywords, meta_descricao, disponivel, sigla_idioma FROM Produtos WHERE codigo_chave = ” & Replace(VetorCodigoChave,”,”,”") & ” AND sigla_idioma = ‘”& Trim(VetorIdioma) &”‘”, Conexao‘consulta subcategoria
if myFileUpload.Form(“codigo_subcategoria”) <> “” Then
Set RS_SubCategorias = Server.CreateObject(“ADODB.Recordset”)
RS_SubCategorias.CursorLocation = 3
RS_SubCategorias.CursorType = 0
RS_SubCategorias.LockType = 3
‘Executa a query de consulta
RS_SubCategorias.Open “SELECT codigo_subcategoria, codigo_categoria FROM Subcategorias WHERE codigo_categoria = ” & codigo_categoria & ” AND codigo_subcategoria = ” & myFileUpload.Form(“codigo_subcategoria”) & ” “,Conexao
if RS_SubCategorias.recordcount = 0 Then
Codigo_subcategoria = 0
End if
RS_SubCategorias.Close
Set RS_SubCategorias = Nothing
End if‘Se não existir um codigo chave para este registro, indica que categoria não está cadastrada com idioma da consulta
Else
RS_Produto.Open “SELECT codigo_chave, codigo_produto, codigo_categoria, codigo_subcategoria, codigo_marca, codigo_produto_loja, nome_produto, descricao_produto, autor, codigo_isbn, tamanhos, cores, preco_base, preco_unitario, desconto,frete_gratis, sul, sudeste, centro, norte, nordeste, moeda, quantidade_produto, img_produtoPQN, img_produtoGRD, img_produto_adic01PQN, img_produto_adic01GRD, img_produto_adic02PQN, img_produto_adic02GRD, img_produto_adic03PQN, img_produto_adic03GRD, peso, frete, destaque_vitrine, promocao, data_inicio, data_fim, meta_keywords, meta_descricao disponivel, sigla_idioma FROM Produtos WHERE sigla_idioma = ‘”& Trim(VetorIdioma) &”‘”, Conexao
‘Metodo que define a ação de novo registro
RS_Produto.AddNew
‘Registra o codigo de categoria passado para este novo registro
RS_Produto(“codigo_produto”) = request.querystring(“codigo_produto”)
End If
Pronto! agora já poderá alterar a categoria de qualquer produto.
Forte abraço.
Espero ter ajudado.
Posts Relacionados:
Tags:
Ola, fiz a modificação, mas acontece um erro, por exemplo tinha um produto cadastrado em uma categoria, dai troquei ele de categoria até ai tudo bem, so que fui trocar mais uma vez de categoria, quando fiz isso ele aparece somente o nome do produto, o campo para o texto, a caixa de categoria mais para na subcategoria, não sai dali e não aparece mais nenhum outro campo. como posso resolver isso?
Comigo deu o mesmo erro.
Olá Aristeu,
Corrigi no post acima o problema que o Andson apontou.
Abraço.
Olá Andson,
Corrigi o problema que apontou no post acima. Obrigado por reportar.
Abraço.
Esta loja da Locaweb nao vale a pena. Existem muitas outras solucoes gratuitas que estao pleno desenvolvimento – Magento por exemplo.
Alem de nao ser boa, o provedor Locaweb é o que há de pior. Este fim de semana ficou com 36 horas com meu site fora.
Chequem o twitter e o statusblog. Só problemas.