Jump to content
Fivewin Brasil

miragerr

Membros
  • Posts

    716
  • Joined

  • Last visited

  • Days Won

    12

Posts posted by miragerr

  1. Ola, Bom dia a todos

     

    Realmente o que o GILMER falou, se aplica a ferramenta WINDEV MOBILE, para projetos rápidos é funcional, tem muitos recursos, mais esbarra em alguns fatores, como EURO valor impraticável para compras e atualizações, tamanho do APK, embora tenham diminuindo agora na 25, mais sinceramente, estou com a versão 24, e não vou atualizar, estou mudando para o B4A, é um pouco mais trabalhosa, MUITO MAIS BARATA, APK muito pequeno, e outra, MUITO MAIS RÁPIDA que a WINDEV MOBILE, isso no quesito SGDB como o FIREBASE que ja vem embarcado no ANDROIDE e o SQLITE que também já vem até no iOS.

    No meu ponto de vista, B4A e B4i são as minhas escolhas atualmente.

  2. Ola, Boa noite

     

    Se você esta lendo a partir de um arquivo TXT, você pode fazer o seguinte.

    		oFile := TTxtFile():New( "nome do arquivo" )
    		IF !oFile:Open()
    			MsgStop("Impossivel Abrir arquivo "+CRLF+"<< "+NOME DO ARQUIVO+" >>","Atenção")
    			LOOP
    		EndIf
    
    		aLinhas := {}
    		DO While !oFile:Eof()
    			aLines := HB_aTokens( oFile:ReadLine(), "|" )
    			AADD( aLinhas, aLines )
    			oFile:Skip()
    		EndDo
    
    	xBrowse( aLinhas, "e só escolher" )

    Espero ter ajudado.

  3. Ola, Boa noite

     

    Seria muito interessante se esse CSRT fizesse parte do QRCode, assim o mesmo não seria apenas um papel impresso, digo isso pois tem sistemas no mercado que burlam o fisco, da seguinte forma.

     

    Você vai fazer compras em um supermercado, e compra 30 itens, no papel sai os 30 itens e tudo mais, mais o sistema só envia 20 para o Fisco.

    Entenderam né.

     

    Aqui no meu estado tem muito isso, já peguei vários sistemas.

     

    Com o CSRT no QRCode, é como se o papel impresso tivesse uma autenticação de quem gerou a NFC-e.

     

    Espero ter ajudado.

     

  4. Ola, Boa tarde

     

    Desculpe, na realidade me referi a movimentação dos ITENS no período, sendo, SAÍDAS, ENTRADAS e/ou PRODUÇÃO. todos os ITENS que sofreram qualquer tipo de movimentação.

     

    Fico no aguardo.

  5. Ola, Amigos, Boa tarde

     

    O Bloco K em questão, é somente dos ITENS que foram vendidos no período de geração do SPED, ou é de todo o ESTOQUE, como se fosse um INVENTÁRIO ?

     

    Fico no aguardo.

  6. Ola... Bom dia velinho

     

    É elogio sim o "VELHINHO" pois garanto que você já participou de muitos cortejos de amigos seus, e você ainda esta por aqui, desfrutando, ou estou errado :P, então você é um privilegiado.

    Quanto as SELECTs com muitos JOINs até concordo, sem uma boa estruturação, realmente pode ficar lento, mais travar o SELECT de outros, acho pouco provável... o que faz travar um SELECTs ou o BANCO DE DADOS é um UPDATE ou INSERT que esta aguardando a liberação da TABELA e outros SELECTs estejam fazendo uso da TABELA em questão com o INSERT.

     

    O que ele pode fazer é o seguinte usando um FRONT-END:

    SELECT * FROM information_schema.processlist WHERE INFO is not null;

     

    E analisar qual é o PC ou processo no MYSQL que esta fazendo o BLOQUEIO, pois a informação apare no SELECT acima, pois eu já usei muito o comando acima para encontrar quem é o PC que esta fazendo o travamento, como também o que esta ocasionando o TRAVAMENTO.

     

    Espero ter ajudado.

  7. Ola, Bom dia Velinho

     

    Amigo, tenho alguns SELECTs cabeludos, e longos, mas lhe garanto, não tenho problemas de travamento, como falei acima, acontece quando tenho um LOOP com muitos registros de INSERT e UPDATE, isso tem me atrapalhado um pouco, e olha que tenho um cliente com mais de 60 PCs vendendo ao mesmo tempo.

    Uma coisa que vou colocar em pratica são VIEWs, pois gera uma tabela já pronta para a necessidade que pretendo, e fica muito prática, pois voce só faz o SELECT na VIEW e pronto.

    Espero ter ajudado

  8. Ola, Bom dia

     

    Vou dar um pitaco, instruções de SELECT não travam o Mysql para outros SELECTs, o que pode travar é alguma instrução de UPDATE ou INSERT em algum FOR...NEXT com muitos registros, isso faz com que a TABELA em questão fique bloqueando a cada INSERT, isso acontece comigo quando vou atualizar produtos em filiais.

     

    Espero ter ajudado.

  9. Ola, Bom dia

     

    Eu tenho 2 funçoes para isso:

     

    Function Image2SQL( cFile )
    *********************************************************************************************************
    **
    ** Prepara imagem para SQL
    Return StrToHex(MemoRead(cFile))
    
    Function SQL2Image( cSQL )
    *********************************************************************************************************
    **
    ** Prepara imagem do SQL para mostrar
    Return HexToStr( cSQL )

    Uso da seguinte forma para inserir

    cLocal_Nova :=  CurDrive()+":\"+Curdir()+"\newfile.jpg"
    
    "INSERT INTO estoque_imagem ( arimagem ) VALUES( "+SR_EscapeString( Image2SQL(cLocal_Nova), CONNECT_MYSQL )+ ")"

    Para recuperar e motrar a imagem

    oImagemOfFundo:LoadFromMemory( SQL2Image( campo_da_imagem ) )
    oImagemOfFundo:Refresh()

     

    Espero ter ajudado.

  10. Ola, Bom dia

     

    Eu uso uma classe modificada do Harbour Boleto para a emissão e geração dos arquivos de remessa para os bancos ITAU, BRADESCO, BRASIL, CAIXA são esses que uso até o momento, mais é muito pratico de se montar os outros.

     

    Se precisar me chama no Skype: jackson_rr

     

    Espero ter ajudado.

  11. Ola, Bom dia

     

    Quando você usa o USE... você esta criando uma ÁREA de trabalho, o qual o xBrowse consegue enxergar, para você usar o nSql:Exec você pode pegar o resultado em um ARRAY o qual EU também uso muito.

     

    mais para isso você deve colocar todos os parâmetros necessários.

     

    Método Exec()
    Executa um comando SQL, recuperando opcionalmente o result set
    
    › Sintaxe
    
    
    Exec( <cCommand>, [<lMsg>], [<lFetch>], [<aArray>], [<cFile>, [<cAlias>]], [<nMaxRecords>], [<lNoRecno>], [<cRecnoName>], [<cDeletedName>], [<lTranslate>] ) ==> NIL
    
    
    › Argumentos
    
    
    
    <cCommand>  Comando SQL a executar 
    <lMsg>  Caso .T. (default) gera um run time error caso exista um erro no comando SQL 
    <lFetch>  Caso .F. (default), o result set não é recuperado. Caso .T., o result set é recuperado conforme os parâmetros seguintes 
    <aArray>  Array que receberá o result set caso informado po referência, e caso lFetch esteja com .T. 
    <cFile>  Nome de arquivo DBF que será utilizado para armazenar o result set caso lFetch esteja com .T.. Esta opção possui prioridade sobre o parâmetro <aArray>, ou seja, caso seja informado o nome do arquivo não será gravado o result set no array do parâmetro anterior. <cFile> será criado com a estrutura do result set do comando SQL e ficará aberta em modo exclusivo após a execução do método. 
    <cAlias>  Alias do arquivo DBF a ser criado na opção acima. 
    <nMaxRecords>  Quantidade máxima de linhas do result set a recuperar 
    <lNoRecno>  Caso .F. (default) adiciona a coluna referente ao Recno() no result set. Caso .T., não adiciona 
    <cRecnoName>  Nome da coluna Recno() 
    <cDeletedName>  Nome da coluna Deleted() 
    <lTranslate>  Caso .T. (default) retorna a informação contida em Multi Idioma no idioma atual 

     

    Espero ter ajudado.

×
×
  • Create New...