Jump to content
Fivewin Brasil

sambomb

Membros
  • Posts

    1,951
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by sambomb

  1. Porque não utiliza bChange ou bKeyDown no lugar do Valid?
  2. Daruma e Bematech já possuem impressora não fiscal e continuam vendendo, as demais não estou acompanhando
  3. Ainda existe a necessidade da impressão do comprovante para o cliente, e neste irá constar um QR-Code com o link para pesquisa na receita da NFC-e, e portanto existe a necessidade de uma impressora, pode ser impresso em A4, mas para economia tb pode ser feito em uma impressora não fiscal ( DARUMA e BEMATECH possuem )
  4. Destino := SPACE(512) //-- Adicionado o @ para indicar que vai passar a variável por referência para preenchimento pela DLL IF (nRet := BmMFDEX("C:\SISCOM\FISCO\DOWNLOAD.MFD","04/10/2014",@Destino)) <> 1 MsgStop("Arquivo Não Foi Gerado","Atenção") RETURN nil ELSE MSGSTOP(SUBSTR(Destino,1,10),"Atenção") ENDIF
  5. Provavelmente não é então segue: //-- Chamada no VB //Public Declare Function Bematech_FI_GeraRegistrosCAT52MFD Lib "BEMAFI32.DLL" (ByVal cArquivo As String, ByVal cData As String) As Integer DLL32 function BmMFDAto1704( cOrigem AS STRING,; //-- Path+nome do arquivo contendo o download da MFD (.mfd). cData AS STRING) //-- Data no formato "DD/MM/AAAA". AS _INT PASCAL FROM "Bematech_FI_GeraRegistrosCAT52MFD"; LIB xDll //-- Exemplo de chamada de relatório do SPED ( PARA COMPARAÇÃO ) //-- Chamada no VB //Public Declare Function Bematech_FI_GeraRegistrosSpedMFD Lib "BEMAFI32.DLL" ( ByVal arq_origem as string, ByVal arq_destino as string, ByVal data_inicial as string, ByVal data_final as string, ByVal perfil as string, ByVal CFOP as string, ByVal lac_fiscal as string, ByVal pis as string, ByVal cofins as string) as Integer DLL32 function B_RELSPED( cOrigem AS STRING,; //-- Path+nome do arquivo contendo o download da MFD (.mfd). cDestino AS STRING,; //-- Path+nome do arquivo texto de destino. cDataInicial AS STRING,; //-- Data inicial no formato "DD/MM/AAAA". cDataFinal AS STRING,; //-- Data final no no formato "DD/MM/AAAA". cPerfil AS STRING,; //-- Perfil do relatório a ser gerado, sendo "A", "B" ou "T", onde T = Todos os registros (A e . cCFOP AS STRING,; //-- Código CFOP do estabelecimento, com o tamanho de 4 dígitos. cCodObsLancFiscal AS STRING,; //-- Código da observação do lançamento fiscal. Caracter branco caso opcional. cAliquotaPis AS STRING,; //-- Valor percentual da alíquota para o cálculo do PIS, com o tamanho de 4 dígitos sem a vírgula (0000) ou 5 dígitos com a vírgula (00,00). cAliquotaCofins AS STRING); //-- Valor percentual da alíquota para o cálculo do COFINS, com o tamanho de 4 dígitos sem a vírgula (0000) ou 5 dígitos com a vírgula (00,00). AS _INT PASCAL FROM "Bematech_FI_GeraRegistrosSpedMFD"; LIB xDll
  6. Veja se é só o underline: // Gera Arquivos requisito Arq. MFD, REQUISITO VII - ITEM 6 DLL32 FUNCTION BmMFDAto1704 ( carquivo AS LPSTR, carquivoD AS LPSTR, CtipoArq AS LPSTR, Ctipo AS LPSTR, In AS LPSTR, Fi AS LPSTR, cusuario AS LPSTR ) AS LONG PASCAL ; FROM "Bematech_FI_GeraRegistrosCat52MFD" LIB xDll
  7. fErase é de nível mais baixo, o que eu considero que seja uma vantagem pois tem um número menor de fatores que podem causar problemas.
  8. FUNCTION EliminaDir(cDir) If IsDir(cDir) WinExec("RD " + cDir + " /S",0) Else ? "Diretório " + cDir + " inválido." End Return
  9. O grande problema que será enfrentado será competir com a velocidade de evolução das plataformas nativas e das que já estão disponíveis, esse projeto já está começando atrasado pelo menos uns 5 anos e com apenas 2 desenvolvedores é muito trabalho a ser executado, digamos que em 2015 tenhamos uma versão funcional para começar o desenvolvimento, até lá Android e iOS já avançaram pelo menos 1 versão, fazendo com que fique defasado e performance é crucial nesse tipo de aplicação o que vai ser um empecilho extra
  10. Disponha! Edita o título para por como resolvido e na próxima tenta um título pro post mais sugestivo, fica mais simples de entender sobre o que se trata e ajudar quem vier a ter o mesmo problema que você
  11. Local oGet := {}, cGet := {} estr := DbStruct() For i=1 to Len(estr) estr[i,1] := Upper( Substr( estr[i,1], 1, 1 ) ) + Lower( Substr( estr[i,1], 2 ) ) cVar := estr[i,1] estr[i,2] := &(cVar) End nMax := Min( Len(estr) , 20 ) DEFINE DIALOG xDlg; FROM 1, 5; TO 40, 100; TITLE Alias() nLin := 0.99 oGet := Array(nMax) cGet := aFill(Array(nMax),Space(20)) For i=1 to nMax @ nLin,1 say estr[i,1] of xDlg nLin+=0.86 End For i=1 to nMax cGet := estr[i,2] @ i,5 get oGet var cGet of xDlg End ACTIVATE DIALOG xDlg CENTERED return nil
  12. estr := DbStruct() For i=1 to Len(estr) estr[i,1] := Upper( Substr( estr[i,1], 1, 1 ) ) + Lower( Substr( estr[i,1], 2 ) ) cVar := estr[i,1] estr[i,2] := &(cVar) End nMax := Min( Len(estr) , 20 ) DEFINE DIALOG xDlg; FROM 1, 5; TO 40, 100; TITLE Alias() nLin := 0.99 For i=1 to nMax @ nLin,1 say estr[i,1] of xDlg nLin+=0.86 End For i=1 to nMax @ i,5 get estr[i,2] of xDlg End ACTIVATE DIALOG xDlg CENTERED return nil
  13. Rochinha, algumas dlls indicam sucesso com 1 e erro com 0, outras sucesso com 0 e erro com -1, entre infinitas combinações possíveis, até mesmo o código do erro já pode vir diretamente nesse retorno. Exemplo: 1 = Sucesso 0 = Sem comunicação -1 = Parâmetro inválido -2 = Erro aleatório de exemplo -3 = Outro exemplo Então nem sempre pode por <= 1, vai de caso a caso E no caso dele o retorno válido é o 1:
  14. Tem diversos níveis de infecção, eu utilizo o Kasperky ( original KIS2014 ) e alguns arquivo contaminados ele limpa, outros ele manda para quarentena. Se for um executável mal intencionado a única solução é excluir, se for um arquivo com um executável "injetado" tem como tentar limpar.
  15. tone(880,0.1) tone(1880,0.1)
  16. http://brazil.kaspersky.com/produtos/produtos-para-usuarios-domesticos/internet-security Se você leva antivirus a sério deveria experimentar utilizar um pago, tem pacotes de 3 anos para multiplas máquinas que valem o investimento
  17. Essa solução ae é para verificar se tem o Microsoft Security no win 7 x86, no win 8.1 x64 é o windows defender C:\Program Files\Windows Defender\MsMpEng.exe Só verificar se existe o arquivo principal do antivirus, meia hora no google deve resolver...
  18. If File( "C:\Program Files\Microsoft Security Client\MsMpEng.exe" )
  19. Crie uma função para isso... For i := 1 TO 100 CriaBotao(i) End Procedure CriaBotao( nCont ) REDEFINE SBUTTON OBOTAOM[nCont]; ID (nCont+101); //-- 101 + 1 = 102 até 101 + 100 = 201 ACTION Botao(nCont) TOOLTIP "Clique aqui para efetuar vendas por telefone" ; COLORS PRETO,CORTABELA; FONT FNORMAL; OFFICE; OF DLGVEN Return Procedure Botao( nCont ) ? "Botão pressionado foi o : " + Str( nCont ) Return
  20. Fivewin tem uns bugs com foco em componente... O que eu fiz ae é criar uma tela que fica ativa só por 0.2 segundos e depois fecha sozinha, depois disso joga do foco para o componente que você quer. Você pode separar essa solução ae em uma função colocando o tempo e janela atual como parâmetros.
  21. @ 79, 206 BTNBMP oBtnW OF oFld:aDialogs[3] 2007; FILE "pwd\level3.bmp" SIZE 15, 15 UPDATE; TOOLTIP "Grava a dados"; ACTION ClickBotao() Function ClickBotao() Local oDlgPause GRAVA_DE() oBrDE:Refresh() cCODES:=Space(20) nQTDE:=0 cDEN:=Space(8) oGde[1]:Refresh() oGde[2]:Refresh() oGde[3]:Refresh() DEFINE DIALOG oDlgPause; FROM -10,-10 TO 1, 1; STYLE nOr( DS_MODALFRAME, WS_POPUP ); OF oFld:aDialogs[3] oDlgPause:nTop := -20 oDlgPause:nLeft := -20 oDlgPause:bStart := { || Eval( { || WaitSeconds( 0.2 ) }, oDlgPause ), oDlgPause:End(), SysRefresh() } ACTIVATE DIALOG oDlgPause oDlgPause := Nil oGde[1]:SetFocus() Return
  22. cVal := "1.520,86" nVal := Val( StrTran( StrTran( cVal, "."),",",".") ) ? nVal //-- 1520.86
  23. Você diz do usuário informar mais de 6 número e fazer combinações de 6 números até alcançar todas as possibilidades?
×
×
  • Create New...