Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite pessoal, estou precisando um ajuda urgente, é sobre um comercio eletronico, eu queria deixar definida as condições, isso é um site de e-commercer, e queria fazer essa mudança. Vou colocar abaixo a tabela de preço e sequentemente o codigo do e-commercer.
O novo codigo seria baseado nessa tabela fornecida pelo correio.
Gramas Básico
Mais de 50 até 100 1,50 - P0 (Campos da tabela)
Mais de 100 até 150 1,90 - P1
Mais de 150 até 200 2,30 - P2
Mais de 200 até 250 2,70 - P3
Mais de 250 até 300 3,10 - P4
Mais de 300 até 350 3,50 - P5
Mais de 350 até 400 3,90 - P6
Mais de 400 até 450 4,30 - P7
Mais de 450 até 500 4,70 - P8
'############### FRETE PERSONALIZADO ###############
Function Frete_Personalizado(Cidade,UF,FctPeso)
Pesofixo = "P" & fix(FctPeso)
' Verifica se a faixa de peso é inferior a 1 kg
If Pesofixo = "P0" Then
' Verifica se o peso é inferior a 0.300 kg
If FormatNumber(Cdbl(FctPeso),1) < FormatNumber(Cdbl("0,1"),1) Then
faixaPeso = "P0"
Else ' Para pesos entre 0.300 a 1 kg
faixaPeso = "P1"
End If
Else ' Define a faixa de peso. Acima de 1 kg
If CDbl(FctPeso) = CDbl("0,5") Then
faixaPeso = "P" & fix(FctPeso)
Else
faixaPeso = "P" & (fix(FctPeso) + 1)
End If
End If
indicador = Pega_DadoBanco("Tabela_frete_personalizado","indicador","Localidade","'"& Replace(Cidade,"'","") &"'")
'Se não houver resultado para indicador a cidade não existe na tabela.
'Esta condição indica que a cidade não é capital e assume o valor de D (Outras)
If indicador = "" Then
Indicador = "D"
End If
If Replace(faixaPeso,"P","") > 9 And CDbl(FctPeso) > CDbl("0,5") Then
Frete_Person = "vazio"
Frete_Person_erro = Application("CepFrtTxtLimitePeso")
Else
Set RS_Frete_PersonInt = Server.CreateObject("ADODB.Recordset")
Query1 = "SELECT "&faixaPeso&" FROM Tabela_frete_personalizado WHERE uf ='"& uf & "' AND indicador = '"&indicador&"' "
Response.write Query1
RS_Frete_PersonInt.Open Query1, Conexao
If Not RS_Frete_PersonInt.Eof Then
Frete_Person = RS_Frete_PersonInt(faixaPeso)
Frete_Person = FormatNumber(Frete_Person)
Frete_PersonVis = FormatNumber(Frete_Person)*FatorCambio(Session("Valor_Cambio"))
Frete_Person = FormatNumber(Frete_Person)&"|"&FormatNumber(Frete_PersonVis)
Frete_Person_erro = "ok"
Else
Frete_Person = "vazio"
Frete_Person_erro = Application("CepFrtTxtModNaoAtende")
End if
Set RS_Frete_PersonInt = Nothing
End If
informacoes = informacoes & OpcaoFrete(UCase(pegaValorAtrib(Application("XMLArquivoConfiguracao"),"dados/configuracao_dados","NomeFretePersonalizado")),Frete_Person,Frete_Person_erro)
End Function
'############### FIM - OPÇÕES DE FRETE ###############
Espero que possam me ajudar, ficarei muito agradecido. ISSO É DE CARATER URGENTE!!!
Não leio codigo fonte a menos que seja porque tenha algum erro.
O que você quer é fácil de implementar, pega o produto, se ele pesar até 50 grs, acrescenta o valor do correios no preço total, se estiver entre 51 grs e 100 gr, é outra conta.
if peso <= 50 then
preçototal= preçototal+1.50
end if
if peso >50 and peso <= 100 then
preçototal = preçotoal+1.90
end if
e por ai vai, não é muito complicado de ser fazer.
desculpe, amigo...
não entendi sua dúvida...