Ir para conteúdo
Fórum Script Brasil

Alberto Mota

Membros
  • Total de itens

    296
  • Registro em

  • Última visita

Tudo que Alberto Mota postou

  1. Obrigado Jhonas, esta ok. Esta resolvido. Um abraço
  2. Prezados colegas, estou usando o Delphi 7, e possuo um script para importação de arquivo texto. É o arquivo retorno do Banco Santander. No meu pc faz a importação sem problemas. Na maquina do cliente dá erro: Is not a valid date: '31/08/2012' A algum tempo Jhonas me auxiliou quando o txt estava desconfigurado, e salvei no wordpad, resolvendo o problema. Mas agora como pode num pc imortar sem problemas e no outro acusar erro? Ainda seria o bloco de notas do cliente com problemas? Desde já, obrigado.
  3. Foi resolvido. Obrigado Fulvio. Consegui tambem complementar com o case conforme abaixo: CASE WHEN resto = 1 THEN 'P' WHEN resto = 0 THEN '0' WHEN resto > 1 THEN CAST(11 - resto AS varchar) END AS dv Um abraço.
  4. Prezados colegas, o cálculo do nosso numero do Bradesco é diferente dos demais, requer que seja colocada a letra P quando o resto da divisão for 1. Tentei um case, mas não funcionou, dá erro de conversão: CASE WHEN resto = 1 THEN 'P' ELSE resto END AS dvresto se eu colocar CASE WHEN resto = 1 THEN 0 ELSE resto END AS dvresto, então a consulta é executada. Há algum tempo Fulvio me passou um script do modulo 11 que esta ok para outros bancos, mas para o Bradesco tambem não consegui adapta-lo, pois é justamente em cima do resto: No manual ---------------------------------------------------------------------------------- Obs.: Se o resto da divisão for “1”, desprezar a diferença entre o divisor menos o resto que será “10” e considerar o dígito como “P”. ---------------------------------------------------------------------------------- 2- Se o resto da divisão for “0”, desprezar o cálculo de subtração entre divisor e resto, e considerar o “0” como dígito. ---------------------------------------------------------------------------------- Abaixo segue o script set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER FUNCTION [dbo].[Modulo11Base7](@VALOR varchar(60)) RETURNS CHAR(1) AS BEGIN DECLARE @SOMA INT, @CONTADOR INT, @PESO INT, @DIGITO INT, @RETORNO CHAR(1), @BASE INT, @RESTO BIT SET @SOMA = 0 SET @PESO = 2 SET @BASE = 7 SET @RESTO = 0 SET @CONTADOR = Len(@VALOR) LOOP: BEGIN SET @SOMA = @SOMA + (Convert(int, SubString(@VALOR, @CONTADOR, 1)) * @PESO) IF (@PESO < @BASE) SET @PESO = @PESO + 1 ELSE SET @PESO = 2 SET @CONTADOR = @CONTADOR-1 END IF @CONTADOR >= 1 GOTO LOOP IF (@RESTO = 1) BEGIN SET @RETORNO = (@SOMA % 11) END ELSE BEGIN SET @DIGITO = 11 - (@SOMA % 11) IF (@DIGITO > 9) SET @DIGITO = 0 SET @RETORNO = @DIGITO END IF @RETORNO=0 or @RETORNO=10 SET @RETORNO = 1 RETURN @RETORNO END ----------------- Desde já, obrigado.
  5. Bareta, valeu pela atenção. Adaptei seu script e consegui adaptar. Ficou perfeito. Obrigado.
  6. Bom dia Fulvio. Consegui resolver criando várias consultas e aninhando depois. Obrigado mais uma vez pela ajuda. Um abraço.
  7. Prezados colegas, estou tentando atualizar vários produtos num form mas não estou conseguindo. Pesqusei muito na web e nada funcionou. O banco de dados é o sql server. Estou usando as seguintes paginas 1- <form method="post" action="atualizaproduto.asp"> <% j=0 while not produtos.eof %> <table width="750" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="30"><input type="hidden" name="codp<%=j%>" value="<%=produtos("codp")%>" /></td> <td width="30"><input name="precocusto<%=j%>" type="text" value="<%=produtos("ref")%>" size="5" /></td> <td width="310"><input name="txtdescr" type="text" value="<%=produtos("descrproduto")%>" size="50" /></td> <td width="185"><input name="precocusto<%=j%>" type="text" value="<%=produtos("P")%>" size="5" /></td> <td width="185"><input type="checkbox" name="checado" value="<%=produtos("codp")%>"></td> </tr> </table> <% j=j+1 produtos.movenext wend %> <input type="hidden" name="conta" value="<%=j%>"> <input type="Submit" value="Alterar"> </form> ============================================== 2- atualizaprodutos.asp (resumo) <% contador = 1 while contador < request.form("conta")-1 sql = "update tblprodutos set " sql = sql & "precocusto =" & request.form("precocusto"&contador) sql = sql & " where codp =" & request.form("codp"&contador) set atualiza = conntemp.execute(sql) contador=contador+1 wend %> surge o seguinte erro: Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC SQL Server Driver][sql Server]Incorrect syntax near '1'. /atualizaproduto.asp, line 25 onde a linha 25 é set atualiza = conntemp.execute(sql) Desde já, obrigado.
  8. Prezados colegas, no access consigo fazer calculos com colunas separadas tipo assim: T1: 100-[bonificacao1] T2: [T1]-([T1]*[bonificacao2]/100) onde T2 utiliza a coluna T1 sem problema. Porem no sql server isso não consegui adaptar. Teria que fazer várias consultas para alcançar o objetivo. Como faço no sqlserver? Desde já, obrigado.
  9. Segue um exemplo que uso <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% Conn = "Provider=SQLNCLI;Server=bsxx.webservidor.net,3025;Database=banco_db;UID=usuario;PWD=senha;" %> <% sql= "SELECT * FROM tblcidades order by Cidade" set consulta = Conn.execute(sql) %>
  10. Prezados colegas, pesquisei na net e não encontrei resposta. Envio normalmente email atraves de minha pagina asp, mas gostaria de ter uma confirmação que o destinatario recebeu meu email Que essa confirmação retornasse para mim quando for um email válido. Desde já, obrigado.
  11. Foi descuido meu. Não enviei uma das fotos. Na hora passou batido. Esta ok agora.
  12. Bareta, boa noite. Ao passar o mouse mostra o caminho correto onde esta armazenada na tabela.
  13. Prezados colegas estou adaptando o jquery no asp e gostaria de colocar um efeito de zoom quando as imagens do produtos surgissem. Esse abaixo mostra o zoom, mas a imagem é fixa <a href='1550.jpg' class='cloud-zoom' id='zoom3' rel="tint: '#ff0000',tintOpacity:0.5 ,smoothMove:5,zoomWidth:480, adjustY:-4, adjustX:10"><img src="1550g.jpg" alt='' title="Bicicleta Pink" border="1" /></a> Alterei em Asp para <a href='catalogo/<% = produtos("Referencia") %>.jpg' class='cloud-zoom' id='zoom2' rel="position:'inside' , showTitle: false, adjustX:-1, adjustY:-1"><img src="catalogo/<% = produtos("Referencia") %>g.jpg" alt='' title="Produtos online" border="1" /></a> E mostra apenas carregando e nada acontece Como altero para que mostre de uma forma dinamica? Desde já, obrigado.
  14. nekiter, o seu script é php. Acredito que se voce solicitar ajuda no forum de php e não no forum de Asp seria mais rápido para voce.
  15. Estou quase lá. Pesquisei aqui no forum e adaptei um script do Bareta. Infelizmente esta repetindo as datas. O cabeçalho do grupo esta correto. apenas os itens. Vou colocar o script por inteiro para facilitar. Agradeço de antemão qualquer ajuda. <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <% connSTR = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("dados/februmar.mdb") & ";Persist Security Info=False" set rsItems = Server.CreateObject("ADODB.Recordset") rsItems.ActiveConnection = connSTR rsItems.Source = "SELECT DISTINCT LngNumContrato FROM TblVendaSaidaNovo" rsItems.Open() If rsItems.EOF Then Response.write "Não há dados" else Do Until rsItems.EOF response.write "<table><tr><td>" & rsItems.Fields.Item("lngNumContrato").Value & "</tr></td>" 'rsItems.MoveNext 'loop parent = rsItems.Fields.Item("LngNumContrato").Value set rsItems2 = Server.CreateObject("ADODB.Recordset") rsItems2.ActiveConnection = connSTR rsItems2.Source = "SELECT * FROM tblvendasaidanovo"' WHERE LngNumContrato=" & LngNumContrato & " " rsItems2.Open() Do Until rsItems2.EOF response.write "<tr><td>" & rsItems2.Fields.Item("dataemissao").Value & "</td></tr>" rsItems2.MoveNext Loop rsItems2.Close rsItems2=null response.write "</table><br>" rsItems.MoveNext Loop end if rsItems.Close rsItems=null %> </body> </html>
  16. Prezados colegas, estou usando o Access e o Asp. Gostaria de criar um relatório onde aparecessem as vendas agrupadas por cidades. Onde cada cidade teria seu numero de venda logo abaixo, seu nome de cliente, etc. e subtotal. No final o Total geral em determinado periodo. Até agora só consegui realizar sem agrupamentos. Seria assim: Cidade: Recife N Venda Cliente Total 1 Luiz Silva 500,00 2 Paulo 300,00 -------------------------------------- SubTotal: 800,00 Cidade: Olinda N Venda Cliente Total 1 Luiz Silva 200,00 2 Paulo 300,00 -------------------------------------- SubTotal: 500,00 -------------------------------------- -------------------------------------- Total Geral 1300,00 Desde já, obrigado.
  17. Alberto Mota

    Filtro com data

    Consegui resolver. Tinha dado uma pausa no asp e remexi nos scripts antigos. Eis a solução completa para quem precisar. <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% pesquisa = cdate(request.Form("txtinicio")) pesquisa1 = day(pesquisa) Dia = month(pesquisa) Mes = day(pesquisa) Ano = year(pesquisa) pesquisa2 = len(trim(pesquisa1)) Select Case pesquisa2 Case 1 VarData = Dia & "/" & Mes & "/" & Ano Case 2 VarData = Mes & "/" & Dia & "/" & Ano end select response.write(request.Form("txtinicio")) %> <br> <% pesquisab = cdate(request.Form("txtfim")) pesquisa1b = day(pesquisab) Dia = month(pesquisab) Mes = day(pesquisab) Ano = year(pesquisab) pesquisa2b = len(trim(pesquisa1b)) Select Case pesquisa2b Case 1 VarDatab = Dia & "/" & Mes & "/" & Ano Case 2 VarDatab = Mes & "/" & Dia & "/" & Ano end select response.write(request.Form("txtfim")) %> <% if session("nivelacesso") ="" then response.write "Você não está logado" Response.end end if %> <% if session("nivelacesso") < 2 then response.write "Você não possui permissão de acesso!" Response.end end if %> <% Dim fornecedor Set fornecedor = Server.CreateObject("ADODB.Recordset") fornecedor.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _ Server.MapPath("dados/februmar.mdb") dt1 = Vardata vardataI = VarData vardataF = VarDatab fornecedor.Source = "SELECT * FROM Consulta54Base Where DataEmissao between #"+ VarDataI +"# " + " and #"+ VarDataF +"# order by DataEmissao, NumeroPedidoNovo" fornecedor.CursorType = 0 fornecedor.CursorLocation = 2 fornecedor.LockType = 1 fornecedor.Open() fornecedor_numRows = 0 %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> <title>Vendas</title> <meta name="keywords" content="" /> <meta name="description" content="" /> <link href="default3.css" rel="stylesheet" type="text/css" /> <style type="text/css"> <!-- .style2 {color: #000000} .style5 {color: #000000; font-weight: bold; } .style6 { font-size: 10px; font-weight: bold; } .style7 {color: #000000; font-weight: bold; font-size: 10px; } --> </style> </head> <body> <div id="header"> <div id="logo"> <h1><a href="#">Aplicativo WEB</a></h1> </div> <div id="menu"> <ul> <li class="active"><a href="index.html" title="">Home</a></li> <li><a href="#" title="">A Empresa</a></li> <li><a href="#" title="">Servi&ccedil;os</a></li> <li><a href="#" title="">Clientes</a></li> <li><a href="#" title="">Contato</a></li> </ul> </div> </div> <div id="content"> <form action="prazook.asp" method="post" onSubmit="return verifica_dados(this);"> <table width="742" height="69" align="left" cellpadding="0" cellspacing="0" class="categorias2"> <tr> <td width="66" valign="top" bgcolor="#999999" class="coluna1 style2"><strong>Data </strong></td> <td width="69" valign="top" bgcolor="#999999" class="coluna1 style2"><div align="center"><strong>N&ordm;</strong></div></td> <td width="393" valign="top" bgcolor="#999999" class="style2 coluna1"><span class="style5">Cliente:</span></td> <td height="16" valign="top" bgcolor="#999999" class="coluna1 style2"><div align="right"><span class="style2"><strong>Total</strong></span></div></td> <td valign="top" bgcolor="#999999" class="style2 coluna1"><div align="right"><span class="style2"><strong>Desc.:</strong></span></div></td> <td height="16" valign="top" bgcolor="#999999" class="style2 coluna1"><div align="right"><span class="style2"><strong>Liquido</strong></span></div></td> </tr> <tr> <% do while not fornecedor.eof %> <td height="18" valign="top" bgcolor="#FFFFFF" class="style2 coluna"><div align="center"><span class="style6"> <% = fornecedor("DataEmissao") %> </span></div></td> <td height="18" valign="top" bgcolor="#FFFFFF" class="coluna"><div align="center" class="style7"><% = fornecedor("NumeroPedidoNovo") %> </div></td> <td height="18" valign="top" bgcolor="#FFFFFF" class="style2 coluna"><div align="left"><span class="style6"> <% = fornecedor("nome") %> </span></div></td> <td width="64" height="18" valign="top" bgcolor="#FFFFFF" class="coluna"> <div align="right" class="style7"> <%=FormatNumber(fornecedor("total"),2)%> </div></td> <td width="72" height="18" valign="top" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style7"> <%=FormatNumber(fornecedor("Desc"),2)%> &nbsp;</div></td> <td width="76" height="18" valign="top" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style7"> <%=FormatNumber(fornecedor("Liquido"),2)%> </div></td> </tr> <% totalgeral = totalgeral + fornecedor("Total") desconto = desconto + fornecedor("Desc") liquido = liquido + fornecedor("Liquido") fornecedor.MoveNext Loop %> <tr> <td height="15" valign="middle" bgcolor="#FFFFFF" class="coluna style2"><strong>Total:</strong></td> <td height="15" valign="middle" bgcolor="#FFFFFF" class="coluna">&nbsp;</td> <td height="15" valign="middle" bgcolor="#FFFFFF" class="style2 coluna">&nbsp;</td> <td width="64" height="15" valign="middle" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style5"><%=formatNumber(totalgeral,2)%>&nbsp;</div></td> <td width="72" height="15" valign="middle" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style5"><%=formatNumber(desconto,2)%>&nbsp;</div></td> <td width="76" height="15" valign="middle" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style5"><%=formatNumber(liquido,2)%>&nbsp;</div></td> </tr> </table> </form> </div> </body> </html>
  18. Alberto Mota

    Filtro com data

    Prezados colegas, estou usando um form para filtrar as vendas e não vai de jeito nenhum, mostram registros a mais. Ao digitar de 01/05/2011 até 01/05/2011 vem registros de 05/01/2011 e as vezes vem todos os registros. Acredito que é a função que não estou acertando. Abaixo coloquei o script completo. Desde já, obrigado. <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% Function FormataData(Data) If Data<>"" Then FormataData=Right("0"&DatePart("d",Data),2)&"/"&Right("0"&DatePart("m",Data),2)&"/"&DatePart("yyyy",Data) End Function vardataI = formatadata(request.Form("txtinicio")) Response.write vardataI %> <br> <% Function FormataData2(DataF) If DataF<>"" Then FormataData2=Right("0"&DatePart("d",DataF),2)&"/"&Right("0"&DatePart("m",DataF),2)&"/"&DatePart("yyyy",DataF) End Function vardataF = formatadata(request.Form("txtfim")) Response.write vardataF %> <% if session("nivelacesso") ="" then response.write "Você não está logado" Response.end end if %> <% if session("nivelacesso") < 2 then response.write "Você não possui permissão de acesso!" Response.end end if %> <% Dim fornecedor Set fornecedor = Server.CreateObject("ADODB.Recordset") fornecedor.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _ Server.MapPath("dados/februmar.mdb") vardataI = formatadata(request.Form("txtinicio")) vardataF = formatadata(Request.Form("txtfim")) fornecedor.Source = "SELECT * FROM Consulta54Base Where DataEmissao between #" + vardataI + "# " + " and #" + vardataF + "# order by DataEmissao, NumeroPedidoNovo" fornecedor.CursorType = 0 fornecedor.CursorLocation = 2 fornecedor.LockType = 1 fornecedor.Open() fornecedor_numRows = 0 %>
  19. Jhonas, Resolveu! Está ok. Mais uma vez obrigado.
  20. Prezados colegas, estou usando o componente IDSmtp no Delphi 7 e esta enviando o email normalmente. Gostaria de colocar uma barra de progressão até o término do envio. O codigo utilizado é esse: procedure TFrmbackup.BitBtn12Click(Sender: TObject); var Anexo : Integer; begin IdMessage.Recipients.EMailAddresses := edtPara.Text; IdMessage.Subject := edtAssunto.Text; IdMessage.Body := mmMensagem.Lines; //Manipulando os Anexos for Anexo := 0 to lbxAnexos.Items.Count-1 do TIdAttachment.Create(idmessage.MessageParts, TFileName(lbxAnexos.Items.Strings[Anexo])); IdSMTP.Connect; try IdSMTP.Send(IdMessage); finally IdSMTP.Disconnect; end; Application.MessageBox('Email enviado com sucesso!', 'Confirmação', MB_ICONINFORMATION + MB_OK); end; Como coloco a barra de progressão? Desde já, obrigado.
  21. Boa tarde, Fulvio. Bastante confuso esse manual. Houve um boleto que nem enviei, pois iriam dizer que estava errado: O numero é 000000038920 A soma dos pesos será 100. No sqlserver o dv encontrado foi 1, 100 / 11 = 9,090909 resto = 1 , logo pelo manual 11- 1 = 10 e depois se tornará 1 pelo enunciado final Imagino que retornaria por causa das decimais , 090909 Mas o mistério continua. Pedi que informassem como foi encontrado o dv = 0 e não tinham como fazer isso. Fulvio, muito obrigado. Vou ver com calma o link que indicou. Qualquer novidade informarei. Um abraço.
  22. Fulvio, tudo tranquilo. Obrigado por responder. Vou colocar aqui o que está no manual, na íntegra: ------------------------------------------------------------------- Nosso Número Para o cálculo, utilizar módulo 11, peso 2 a 9 Composição do Nosso Número: NNNNNNNNNNNN D onde: N = Faixa seqüencial de 000000000001 a 999999999999 D = Dígito de controle. Exemplo de cálculo do dígito: Supondo-se que: Nosso Número = 566612457800 Inverter da direita para a esquerda na vertical. 0 X 2 = 0 0 X 3 = 0 8 X 4 = 32 7 X 5 = 35 5 X 6 = 30 4 X 7 = 28 2 X 8 = 16 1 X 9 = 9 6 X 2 = 12 6 X 3 = 18 6 X 4 = 24 5 X 5 = 25 Total 229 / 11 = 20 resto = 9 11-9 = 2 Nosso numero final: 56612457800-2 Utilizar o módulo 11 – peso de 2 a 9 - para o cálculo deste DV. Multiplicar da direita para a esquerda, de 2 até 9, até o final do número, reiniciando em 2 se necessário. Somar os resultados obtidos, multiplicar o total da soma por 10 (dez) e dividi-lo por 11 (onze). O resto desta divisão será o digito do controle. Se o resto for igual a 0 (zero), 1 (um) ou 10 (dez) o digito será = 1 (um). ----------------------------------------------------------------------- De onde saiu esse 0(zero) ? Segui ao pé da letra e de 20 boletos enviados esse deu problema, o de numero 400000192433 Um abraço.
  23. Prezados colegas, essa semana atravessei uma luta de homologação de boletos do Santander. Foi homologado, mas num dos boletos há algo errado quanto ao calculo do resto. Segui fielmente o manual e graças a uma função do fulvio tudo estava normal. A sequencia é o nosso numero 400000192433 , 12 digitos onde o dv será o 13º usando pesos de 2 a 9 a soma é 122. Sendo que o resto de 122 dividido por 11 é 1, sem sombra de duvidas. Porem o Banco Santander alega que é 0 e a palavra final é deles. Em qualquer linguagem: access, sql server, excel, vai dar sempre 1. Como eles conseguiram encontrar esse dv = 0 ? Ou existe mesmo um erro de calculo no sistema do banco? A divisão não é exata. 122/11 vai dar 11,09090909 trabalhando com o inteiro 11 multiplico por 11 = 121 portanto 122 - 121 = 1 Existe uma solução para esse problema no sql server? Desde já, obrigado.
  24. O campo valor deve estar na tabela de pagamentos e os campos não estão devidamente relacionados. Tabela de Clientes e Pagamentos. Veja se ajuda o seguinte select e tente adaptar. Um abraço. SELECT tab_PG.cod_cliente, tab_Clientes.nome, tab_PG.valor, tab_PG.datapgto FROM tab_Clientes INNER JOIN tab_PG ON tab_Clientes.cod=tab_PG.cod_cliente WHERE (((tab_PG.datapgto) Is Null))
  25. O IDMessage você encontra na aba Indy Misc O IDSmtp na aba Indy Clients. Na primeira linha do tópico, existe uma menção aos componentes.
×
×
  • Criar Novo...