%
'-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
' Loja Exemplo Locaweb
' Versão: 6.4
' Data: 12/09/06
' Arquivo: ADM_processa_txtProdutos.asp
' Versão do arquivo: 0.0
' Data da ultima atualização: 16/11//06
'-----------------------------------------------------------------------------
' Licença Código Livre: http://comercio.Locaweb.com.br/gpl/gpl.txt
'-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
%>
<%
' Esta página só pode ser acessada se o visitante já se autenticou
checa_senha()
'Define o tempo maximo para execução do arquivo
server.scripttimeout = 90
'Chamada para conexão com o banco de dados
Call abre_conexao(conexao)
'Cria o objeto para upload de arquivo
Set myFileUpload = Server.CreateObject("SoftArtisans.FileUp")
myFileUpload.Form("txtAtualizacao").Path = Application("DiretorioAtualizacaoProdutos")
Arquivo = Mid(myFileUpload.Form("txtAtualizacao").UserFilename, InstrRev(myFileUpload.Form("txtAtualizacao").UserFilename, "\") + 1)
myFileUpload.Form("txtAtualizacao").SaveAs Arquivo
'Destroi o objeto de upload
Set myFileUpload = Nothing
'Cria o objeto para abrir arquivo texto
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
caminho = Application("DiretorioAtualizacaoProdutos") & Arquivo
'Cria o objeto para ler o arquivo texto
Set openTxt = objFSO.OpenTextFile(caminho, 1,0)
'Loop para leitura das linhas do arquivo texto
while (not openTxt.AtEndOfStream) and response.isclientconnected()
linha_txt = openTxt.readline
arrayx = split(linha_txt,"|")
If UBound(arrayx) <> 2 Then
response.write UBound(arrayx)
response.end
End if
'Response.write "SELECT codigo_produto_loja, preco_base, preco_unitario, quantidade_produto FROM produtos WHERE codigo_produto_loja = '" & arrayx(0) & "'"
'Query de consulta a tabela Produtos
Query_produtos = "SELECT codigo_produto_loja, preco_base, preco_unitario, quantidade_produto FROM produtos WHERE codigo_produto_loja = '" & arrayx(0) & "'"
'Cria objeto para consultar as podutos
Set RS_Produtos = Server.CreateObject("ADODB.Recordset")
'Conexão ADO
Set RS_Produtos.ActiveConnection = Conexao
RS_Produtos.CursorLocation = 3
RS_Produtos.CursorType = 0
RS_Produtos.LockType = 3
'Executa a query
RS_Produtos.Open Query_produtos
'Se o registro existe, atualiza.
If not RS_Produtos.Eof then
preco = arrayx(1)
'Retira o ponto
preco_unitario = replace(preco,".","")
' Retira virgula e repoe por ponto, para evitar problemas no UPDATE, caso banco seja SQL
If Application("TipoBanco")="mssql" Then
preco_unitario = replace(preco_unitario,",",".")
End if
quantidade = arrayx(2)
If preco <> "" Then
Response.write "UPDATE produtos SET preco_base = '" & preco_unitario & "', preco_unitario = '"& preco_unitario &"' WHERE codigo_produto_loja = '" & arrayx(0) & "'" & "
"
Conexao.Execute "UPDATE produtos SET preco_base = '" & preco_unitario & "', preco_unitario = '"& preco_unitario &"' WHERE codigo_produto_loja = '" & arrayx(0) & "'"
End if
If quantidade <> "" Then
RS_Produtos("quantidade_produto") = arrayx(2)
Conexao.Execute "UPDATE produtos SET quantidade_produto = " & arrayx(2) & " WHERE codigo_produto_loja = '" & arrayx(0) & "'"
End if
'Se o registro não existe acumula na variavel indicativa
Else
nolocali = nolocali & arrayx(0) &"|"& arrayx(1) &"|"& arrayx(2) & "
"
End if
wend
Set RS_Produtos = Nothing
openTxt.close
'Destrói os objetos criados
set openTxt = nothing
set objFSO = nothing
'Chamada para o fechamento do banco
Call Fecha_conexao()
'Transfere o valor da variavel indicativa para uma session
'A session será exibida na página de upload de arquivo
session("nolocali") = nolocali
'Mensagem de resposta
msg_resultado = "Informações atualizadas"
'Redirect para página do POST
Response.redirect "ADM_envia_txtProdutos.asp?msg_resultado="& msg_resultado
%>