Jump to content
Fivewin Brasil

sistem

Membros
  • Posts

    561
  • Joined

  • Last visited

  • Days Won

    25

Everything posted by sistem

  1. Harbour Guide: https://harbour.edu.pl/clipper/pt/ng1ddb9.html veja tb: cGetDir()...cGetFile()
  2. nao consigo entender com base nos seus update... esse ID tem na tabela de provas e resposta? veja um exemplo de um update com base em resultado em outra tabela: UPDATE db1.comh SET comh.tip_comh = (SELECT forn.tip_forn FROM db0.forn WHERE forn.cod_forn = comh.for_comh) where comh.sr_recno != 0; pode ser que ajude, pois nao entendi o que o amigo quer
  3. uma pesquisa no forum internacional tipo: excel fecha retornou alguns links: http://forums.fivetechsupport.com/viewtopic.php?f=6&t=34449&p=204617&hilit=excel+fecha#p204617 este link acima deve resolver
  4. o que vc tem na celula oExcel:Cells(n,2):Value do excel? uma "data" em formato caracter? uma data em formato data? uq?
  5. quantas tabelas sao? 2 ou 3 tabela? tipo vc tem: produtos e pedidos (2 tabelas) ou tem produtos, pedidos e itens do pedido (3 tabelas)? exemplo com 2 tabelas. produtos(prod) e itens do pedido(pedi) DELETE FROM db1.prod, db1.pedi USING db1.prod, db1.pedi WHERE pedi.pro_pedi = prod.cod_prod and prod.cod_prod = "0001";
  6. esse soft UNINFE envia nfe em lote?
  7. sistem

    sispag

    pesquisa assim no google => filetype:txt sispag tem varios arquivos txt talvez 1 seja o que procura
  8. talvez ele tenha usado o primeiro código que postei, realmente estava repetindo... coloquei um código novo,,,, vc tb poderá usar o código do JMSILVA que deve ta certo
  9. function test() local x, aVetor:=Array(10), cnum1:="", cnum2:="" for x=1 to 10 aVetor[x] := Int(hb_Random(1, 15)) if x>1 do while VerSeTem(aVetor, x) aVetor[x] := Int(hb_Random(1, 15)) enddo endif next for x=1 to 10 cnum1 = cnum1 + alltrim(strzero(aVetor[x],2))+" " next aVetor := aSort(aVetor) for x=1 to 10 cnum2 = cnum2 + alltrim(strzero(aVetor[x],2))+" " next ? cnum1+CRLF+cnum2 return nil function VerSeTem(aVetor, x) local lexist:=.f., y for y=1 to x-1 If aVetor[y] = aVetor[x] lexist:=.t. endif next return lexist será possível rapaz... que coisa difícil (detalhe total de 15 numeros e sorteando 10 pro teste ficar mais forte) ver ai
  10. https://www.alberton.info/firebird_sql_meta_info.html
  11. saber o numero de registro de um db, serio... isso existe? poderia ser o numero de tabelas de um db USE SEU_DB_AQUI; ...... select count(SHOW TABLES) existe sim olhai...... (fonte: https://stackoverflow.com/questions/286039/get-record-counts-for-all-tables-in-mysql-database) exibir todos os registro de todas as tabelas de 1 db: SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = "SEU DB AQUI"; SELECT TABLE_NAME,SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'SEU DB AQUI' GROUP BY TABLE_NAME; exibir todos os registro de todas as tabelas de todos os dbs: SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES; SELECT TABLE_NAME,SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES GROUP BY TABLE_NAME; vai exibir outras tabelas que talvez vc não queira: dai faz assim: ( aqui vc vai ver todos os campos para vc poder filtrar o que lhe vai servir) SELECT * FROM INFORMATION_SCHEMA.TABLES GROUP BY TABLE_NAME; provavelmente vc chegara a isto: SELECT TABLE_TYPE, TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS, SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES where TABLE_TYPE = "BASE TABLE" and TABLE_SCHEMA != "mysql" and SUBSTRING(TABLE_NAME,1,3) != "SR_" GROUP BY TABLE_NAME; dai vc podera usar o SUM para pegar tudo em um unico numero SELECT SUM(TABLE_ROWS) as TOT_TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES where TABLE_TYPE = "BASE TABLE" and TABLE_SCHEMA != "mysql" and SUBSTRING(TABLE_NAME,1,3) != "SR_";
  12. sqlrdd cSelect := "select count(*) as nReg from clientes" DbUseArea(.t.,"SQLRDD", cSelect, "TempClie") ? "total clientes: "+str(TempClie->nReg) TempClie->(dbCloseArea()) ou SR_GetConnection():exec("SET @n = 0;") cSelect := "SELECT @n := @n+1 AS nRegCorrente, CodCliente, NomeCliente FROM clientes" DbUseArea(.t.,"SQLRDD", cSelect, "TempClie") browse() TempClie->(DbGoBottom()) ? TempClie->nRegCorrente TempClie->(dbCloseArea())
  13. sistem

    TWEB

    Novidade no forum internacional, librería TWEB de domínio público (Carles Aubia) http://forums.fivetechsupport.com/viewtopic.php?f=6&t=35444&sid=3a160cd258ae4845eb9f7f8d52b696cc ajuda/download http://itarraco.com/tweb.help forum http://itarraco.com/tweb.forum vc vai precisar de um servidor php... vc poderá instalar o XAMPP. a instalacao eh simples (next, next, finish) (consulte o link de ajuda/download logo acima) um exemplo para iniciar e pegar gosto: <?php include ( 'config.php' ); // arquivo de configuração, include( TWEB_PATH . "core.php" ); // incluir framework $oWeb = new TWeb('Test TWeb'); // Definimos un objeto $oWeb a partir da clase TWeb $oWeb->SetIcon( 'images/go.png' ); // adicionar um ícone $oWeb->SetBrush( 'images/stucco.gif' ); // adicionar um papel de parede $oWeb->Activate(); // Ativar objeto oWeb $oWnd = new TWindow( 'main', 50, 50, '80%', '80%', CLR_BLUE ); // adicionando a classe TWindow() $oWnd->SetCss( 'border-radius: 8px 8px 0px 0px;' ); // uma borda arredondada para a janela $oPanel = new TPanel( $oWnd, 'main_B', 25, 0, '100%', '100%', CLR_HGRAY ); $oPanel->lBorder = true; $oPanel->SetBottom( '100%' ); $oPanel_C = new TPanel( $oPanel, 'main_C', 50, 20, 300, 100, CLR_WHITE ); $oPanel_C->lBorder = true; $oPanel_C->SetShadow(5); $oPanel_D = new TPanel( $oPanel, 'main_D', 200, 20, null, null, CLR_GRAY ); $oPanel_D->lBorder = true; $oPanel_D->SetBottom( 20 ); $oPanel_D->SetRight( 20 ); $oBtn = new TButton( $oWnd, 'mybutton' , 100, 100, 'Hello world !', 'Hello()' ); $oWnd->Activate(); // Ativar o objeto TWindow $oWeb->End(); // Finalizamos e terminamos o objeto // resumo // iniciamos e ativamos nossa web. // Criamos um janela principal com a classe TWindow. $oWnd = new TWindow( 'main', 50, 50, '80%', '80%', CLR_BLUE ); // o "main" eh o identificador da janela no caso de termos que nos referir a ela // algumas coordenadas 50, 50 // largura e altura '80% 'e '80%' // cor que definimos // invocamos o método SetCss() que tem quase todos os controles que permitem injetar código css no controle. // Neste caso, dizemos para colocar as bordas da janela arredondada. // Criamos um painel que ocupará praticamente toda a janela principal. $oPanel = new TPanel( $oWnd, 'main_B', 25, 0, '100%', '100%', CLR_HGRAY ); // o importante é observar como crio este painel passando a variável que define a janela principal $oWnd. // Este painel tem suas características e instanciamos na variável $oPanel // Criamos mais 2 painéis(main_C, main_D) que serão pendurados no painel que acabamos de construir $oPanel. // Note que os 2 painéis têm a variável $oPanel como o primeiro parâmetro // lBorder para true (mostra uma borda na janela) $oPanel->lBorder = true; // SetShadow(5) é um método que cria uma sombra // O painel $oPanel_D usa 2 métodos importantes, isso ajuda a ajustar o controle neste painel // SetBottom(20) o painel será ajustado a 20 pixels a partir da parte inferior // SetRight (20) o painel será ajustado a 20 pixels do lado direito // e finalemente o $oWnd->Activate() inicializa a janela principal e todos seus controles vinculados ?> // parte JS que será responsável por interagir controles com ações. $oBtn = new TButton( $oWnd, 'mybutton' , 100, 100, 'Hello world !', 'Hello()' ); <script> function Hello() { MsgInfo( 'Hello !' ); } </script> see teste1.php http://sistem.net.br/tweb.examples/teste1.php exemplo com banco de dados: <?php include_once( 'config.php' ); include_once( 'config_db.php' ); // neste arquivo configura a conexao com o DB include_once( TWEB_PATH . 'tdatabase.php' ); $oDb = new TDatabase( DB_SERVER, DB_USER, DB_PSW, DB_DATABASE ); $cSql = 'SELECT * FROM clie WHERE est_clie = "BA"'; $oDb->Query( $cSql ) ; echo '<br>Count: ' . $oDb->RecCount(); echo '<br>'; $oDb->Skip(); while ( ! $oDb->Eof() ) { echo '<br>Registro: ' . $oDb->Get( 'cod_clie' ) . ' - ' . $oDb->Get( 'nom_clie' ) . ' - ' . $oDb->Get( 'end_clie' ); $oDb->Skip(); } $oDb->Close(); ?> resultado: outros ex: http://sistem.net.br/tweb.examples/test_get_btn.php http://sistem.net.br/tweb.examples/test_frame.php http://sistem.net.br/tweb.examples/test_get_picture.php http://sistem.net.br/tweb.examples/test_grid_css.php todos os exemplos http://sistem.net.br/tweb.examples/
  14. codigo removido pois estava com erro e tem outro codigo bem melhor abaixo
  15. é normal, veja: SELECT * FROM information_schema.processlist WHERE command != 'Sleep' order by time;
  16. 1) uso mysqldump para backup cComando := oApp:cDir_001+"mysqldump --host="+oApp:IpSQL+" --port="+oApp:SQLPort+" -u "+oApp:UID+" -p"+oApp:PWD+" --all-databases > "+oApp:BackupPath+"\backupD"+strtran(dtos(Date()), "/","")+"T"+Strtran(time(), ":", "")+".sql" MsgRun( "Gerando Backup", "Backup Automatico, Aguarde...", {|| MYRUN(cComando) } ) Function MYRUN( cComando ) Local oShell, Ret oShell := CreateObject( "WScript.Shell" ) Ret := oShell:Run( "%comspec% /c " + cComando, 0, .t. ) oShell := Nil Return If( Ret=0, .t., .f. ) 2) como assim... controle de usuários conectados? o controle de usuários no meu caso é por meio do meu programa não entendi a pergunta... mas com esse comando vc ver usuários conectados => show full processlist;
  17. quando vc instala tem uma pasta documentos online tem http://sqlrdd.mywebcommunity.org/
  18. Amigo oribeiro tem que usar instruções SQL tipo: drop table produtos; ex: If SR_ExistTable( "produtos" ) SR_GetConnection():exec( "drop table produtos;" ) Endif dica - veja esses videos se vc esta começando em sql youtube.com/watch?v=GaOlyL3Uv9M procure o inicio dos videos pq esse do link nao eh o inicio e sim a sequencia
  19. Judson se não for pedir muito poderia simular com vbscript da mesma maneira que vc fez com cdosys nos meus testes não trabalha bem
  20. Judson hotmail funcionou com que? cdosys? se for poderia postar o codigo
  21. o ribeiro que mostra SR_Version() ? qual a sua versao? scope funciona
  22. sistem

    NFe 4.00

    tipo de pagamento versao 4.00 NFE sera obrigatório: blog.oobj.com.br/campos-de-pagamento-nfe-4-00
  23. hudson, poderia usar o CDOSYS, veja: em vbscript (salvar com bloco de notas ex: email.vbs) o código abaixo: sendmail() Sub sendmail() Set iMsg = CreateObject("CDO.Message") Set iConf = CreateObject("CDO.Configuration") iConf.Load -1 ' CDO Source Defaults Set Flds = iConf.Fields With Flds .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = true 'Ativar autenticação SSL .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 '1 habilita a autenticação básica, '2 permite autenticação NTLM, '0 desativa a autenticação .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "teste@gmail.com" 'email/nome da conta ex.com gmail .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30 'tempo limite de conexão .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "SuaSenha" 'senha remetente .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com" 'servidor smtp ex.com gmail 'yahoo smtp.mail.yahoo.com 465 *Abilitar a opção "permitir apps que usam métodos de acesso menos seguros" na sua conta site so yahoo 'outlook smtp.live.com, outlook.office365.com, smtp-mail.outlook.com 587, 25 'gmail smtp.gmail.com 465 .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 '2-enviar usando porta '1-enviar usando servidor smtp local '3-enviar usando exchange server .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465 'porta smtp a ser habilitada ex. com gmail .Update End With With iMsg Set .Configuration = iConf .To = "teste@gmail.com" 'email destinatário .CC = "" 'carbon copy .BCC = "" 'blind carbon copy .From = "teste@gmail.com" 'email remetente ex. com gmail .Subject = "email usando vbscript" 'assunto .TextBody = "mensagem do email" 'mensagem '.HtmlBody = "<html> <head><meta http-equiv=""Content-Type"" content=""text/html;charset=utf-8""></head><body></body></html>" 'para envio de mensagem no formato html .AddAttachment "e:\teste1.txt" 'anexo 1 .AddAttachment "e:\teste2.txt" 'anexo 2 ... .. . .Send MsgBox "ok" End With End Sub execute assim: cscript //nologo email.vbs ou 2 click mesmo em fivewin ficaria: #include "fivewin.ch" Function Main() local oCfg, oError, oMsg, lRet:= .f. TRY oCfg := CREATEOBJECT( "CDO.Configuration" ) WITH OBJECT oCfg:Fields :Item( "http://schemas.microsoft.com/cdo/configuration/cdoBasic" ):Value := 1 :Item( "http://schemas.microsoft.com/cdo/configuration/sendusing" ):Value := 2 :Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := .t. :Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := .t. :Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := "smtp.gmail.com" // ex. com gmail :Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport" ):Value := 465 // ex. com gmail :Item( "http://schemas.microsoft.com/cdo/configuration/sendusername" ):Value := "SeuEMail@gmail.com" // ex.com gmail :Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword" ):Value := "SuaSenha" :Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout" ):Value := 30 // :Item( "http://schemas.microsoft.com/cdo/configuration/smtpusetls" ):Value := .t. // :Item( "http://schemas.microsoft.com/cdo/configuration/cdoSendTLS" ):Value := .t. // :Item( "http://schemas.microsoft.com/cdo/configuration/HtmlBody = "<html> <head><meta http-equiv=""Content-Type"" content=""text/html;charset=utf-8""></head><body>TESTE</body></html>" :Update() END WITH CATCH oError ? "Error: " + Transform(oError:GenCode, nil) + ";" +CRLF+ ; "SubC: " + Transform(oError:SubCode, nil) + ";" +CRLF+ ; "OSCode: " + Transform(oError:OsCode, nil) + ";" +CRLF+ ; "SubSystem: " + Transform(oError:SubSystem, nil) + ";" +CRLF+ ; "Mensagem: " + oError:Description END TRY oMsg := CREATEOBJECT ( "CDO.Message" ) WITH OBJECT oMsg :Configuration = oCfg :From = "EmailRemetente@gmail.com" // ex. com gmail :To = "EmeilDdestino@gmail.com" // ex. com gmail :Subject = "Assunto do email" :TextBody = "SuaMsg" :AddAttachment = "e:\teste1.txt" :AddAttachment = "e:\teste2.txt" :Send() END WITH lRet := .t. CATCH oError ? "Error: " + Transform(oError:GenCode, nil) + ";" +CRLF+ ; "SubC: " + Transform(oError:SubCode, nil) + ";" +CRLF+ ; "OSCode: " + Transform(oError:OsCode, nil) + ";" +CRLF+ ; "SubSystem: " + Transform(oError:SubSystem, nil) + ";" +CRLF+ ; "Mensagem: " + oError:Description END If lRet ? "ok" Endif Return nil agora a noticia ruim eh que nao consegui enviar emails com servicos da microsoft, tipo: windowslive.com hotmail.com outlook.com gmail, yahoo... trabalha bem
×
×
  • Create New...