
Alberto Mota
Membros-
Total de itens
296 -
Registro em
-
Última visita
Tudo que Alberto Mota postou
-
(Resolvido) Importação de Arquivo texto
pergunta respondeu ao Alberto Mota de Alberto Mota em Delphi, Kylix
Obrigado Jhonas, esta ok. Esta resolvido. Um abraço -
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.
-
(Resolvido) Nosso Numero do Bradesco
pergunta respondeu ao Alberto Mota de Alberto Mota em SQL Server
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. -
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.
-
Bareta, valeu pela atenção. Adaptei seu script e consegui adaptar. Ficou perfeito. Obrigado.
-
Bom dia Fulvio. Consegui resolver criando várias consultas e aninhando depois. Obrigado mais uma vez pela ajuda. Um abraço.
-
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.
-
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.
-
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) %>
-
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.
-
Foi descuido meu. Não enviei uma das fotos. Na hora passou batido. Esta ok agora.
-
Bareta, boa noite. Ao passar o mouse mostra o caminho correto onde esta armazenada na tabela.
-
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.
-
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.
-
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>
-
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.
-
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ç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º</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)%> </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"> </td> <td height="15" valign="middle" bgcolor="#FFFFFF" class="style2 coluna"> </td> <td width="64" height="15" valign="middle" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style5"><%=formatNumber(totalgeral,2)%> </div></td> <td width="72" height="15" valign="middle" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style5"><%=formatNumber(desconto,2)%> </div></td> <td width="76" height="15" valign="middle" bgcolor="#FFFFFF" class="coluna"><div align="right" class="style5"><%=formatNumber(liquido,2)%> </div></td> </tr> </table> </form> </div> </body> </html>
-
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 %>
-
(Resolvido) Barra progressão ao enviar email
pergunta respondeu ao Alberto Mota de Alberto Mota em Delphi, Kylix
Jhonas, Resolveu! Está ok. Mais uma vez obrigado. -
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.
-
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.
-
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.
-
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.
-
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))
-
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.