Jump to content
Fivewin Brasil

mkyx

Membros
  • Posts

    892
  • Joined

  • Last visited

  • Days Won

    15

Everything posted by mkyx

  1. Boa tarde, João Essas opções não alteram a cor da barra de rolagem, mas só linha horizontal onde está o cursor Eu preciso aumentar a largura da barra de rolagem vertical, que vai para cima e para baixo que fica ao lado direito da tabela, e tb alterar a cor. Se alguém souber, Eu agradeço, pela ajuda.
  2. Veja o link abaixo, achei muito bom. https://www.metallisson.com/docs
  3. Boa noite, Estou precisando alterar a cor da barra de rolagem do xbrowse, vertical e horizontal Alguém sabe, os comandos? Obrigado.
  4. Boa tarde, coloquei essa definição no inicio da função em C, e funcionou. #ifndef HB_BOOL #define HB_BOOL #endif
  5. Boa noite, resolvi assim: #include "fivewin.ch" function main() define dialog rel_11 title "teste" hist:={"ze","mane","maria","pedro","joao"} li_1:=15 _pos:=100 for qth=1 to 5 I0:=STRZERO(QTH,3) c_obj:="V_H"+I0 hh:=HIST[qth] @ LI_1,50 SAY &C_OBJ. VAR HIST[qth] PIXEL OF rel_11 SIZE _POS,15 &C_OBJ.:lWantClick = .t. &C_OBJ.:bLClicked = { || _movim(&c_obj.:cvarName) } &C_OBJ.:CTOOLTIP:=ALLTRIM(hh) &c_obj.:cvarName:=ALLTRIM(hh) li_1:=li_1+15 next activate dialog rel_11 centered return .t. FUNCTION _movim(REL_111) ? rel_111 return .t. Blz.
  6. Boa noite eu compilei o programa do hook do teclado e deu erros nas linhas: HB_BOOL flag_hhk = FALSE; HB_BOOL PAUSE_hhk = FALSE; HHOOK hhk = NULL; deu tipo não reconhecido. em que arquivo .h posso encontrar os comando HB_BOOL, HHOOK?
  7. Pessoal o que pode está errado na rotina abaixo, pois eu clico em qualquer um dos nome e só mostra o primeiro nome da lista: #include "fivewin.ch" function main() define dialog rel_11 title "teste" hist:={"ze","mane","maria","pedro","joao"} li_1:=15 _pos:=100 for qth=1 to 5 I0:=STRZERO(QTH,3) c_obj:="V_H"+I0 hh:=HIST[qth] @ LI_1,50 SAY &C_OBJ. VAR HIST[qth] PIXEL OF rel_11 SIZE _POS,15 &C_OBJ.:lWantClick = .t. &C_OBJ.:bLClicked = { || _movim(hh) } &C_OBJ.:CTOOLTIP:=ALLTRIM(hh) &c_obj.:cvarName:=ALLTRIM(hh) li_1:=li_1+15 next activate dialog rel_11 centered return .t. FUNCTION _movim(REL_111) N_HIST:="" for ii=1 to len(REL_11:aControls) if upper(REL_11:aControls[ii]:className())="TSAY" .AND. REL_11:aControls[ii]:lFocused // verifica se é um objeto SAY e se foi o que recebeu o click do mouse N_HIST:=rel_11:aControls[ii]:cVarName // aqui pega o nome da variável II:=len(rel_11:aControls)+10 // aqui agiliza para sair do loop for-next ENDIF next ii ? "O nome onde o mouse tocou é = ",N_HIST return .t. Eu não sei, se essa declaração REL_11:aControls[ii]:lFocused é realmente o comando para saber onde o mouse clicou. Alguém saberia informar? Obrigado
  8. O ideal seria se os desenvolvedores pudesse deixar o mais próximo possível da linguagem de programação atual, e deixar para o compilador fazer todas as inserções dos xml, java script, html, etc
  9. Olá usuário SISTEM funcionou. Muito Grato. José/Pompeo/Mkyx Guaratinguetá, SP
  10. boa noite pessoal, mudei a forma de atribuição e agora está aparecendo as duas casas decimais. mas, mesmo assim, continua com o erro: <ICMS> <ICMSSN500> <orig>0</orig> <CSOSN>500</CSOSN> <vBCSTRet>0.00</vBCSTRet> <pST>0.00</pST> <vICMSSTRet>0.00</vICMSSTRet> <vICMSSubstituto>0.00</vICMSSubstituto> <vBCFCPSTRet>0.00</vBCFCPSTRet> <pFCPSTRet>0.00</pFCPSTRet> <vFCPSTRet>0.00</vFCPSTRet> </ICMSSN500> </ICMS> agora está indicando que a tag <vICMSSubstituto> não deveria existir, mas, se eu não coloco aparece a mensagem de erro que diz que falta essa tag e as demais relacionadas. Alguém tem algum idéia? Obrigado.
  11. Bom dia para o caso acima, que começou a vigorar agora, qual o procedimento correto, pois ao solicitar ajuda pra flexdoc, eles disseram que os valores devem ter duas casas decimais, e a classe do Gilmer não colocar casas decimais para valor zerados. como preencho os valor: :CSOSN:="500" :vBCSTRet :=0.00 :vICMSSTRet :=0.00 :pST :=0.00 :vBCFCPSTRet :=0.00 :pFCPSTRet :=0.00 :vFCPSTRet :=0.00 :vICMSSubstituto:=0.00 como está na classe: aadd( axArray, {"ICMSSN500" , {}, 1 } ); nPos := len(axArray) aadd( axArray[nPos][2], {"orig" , TVoNFeItem():New("N", 1, 1, 1 ,,,oItem:orig ) } ) aadd( axArray[nPos][2], {"CSOSN" , TVoNFeItem():New("N", 1, 1, 3 ,,,oItem:CSOSN ) } ) * if nfc_e="#" aadd( axArray[nPos][2], {"vBCSTRet" , TVoNFeItem():New("N", 1, 1, 15,2 ,,oItem:vBCSTRet ) } ) aadd( axArray[nPos][2], {"pST" , TVoNFeItem():New("N", 1, 1, 15,2 ,,oItem:pST ) } ) aadd( axArray[nPos][2], {"vICMSSTRet" , TVoNFeItem():New("N", 1, 1, 15,2,,oItem:vICMSSTRet ) } ) aadd( axArray[nPos][2], {"vICMSSubstituto", TVoNFeItem():New("N", 1, 1, 15,2 ,,oItem:vICMSSubstituto ) } ) aadd( axArray[nPos][2], {"vBCFCPSTRet" , TVoNFeItem():New("N", 1, 1, 15,2 ,,oItem:vBCFCPSTRET ) } ) aadd( axArray[nPos][2], {"pFCPSTRet" , TVoNFeItem():New("N", 1, 1, 6 ,2 ,,oItem:pFCPSTRET ) } ) aadd( axArray[nPos][2], {"vFCPSTRet" , TVoNFeItem():New("N", 1, 1, 15,2 ,,oItem:vFCPSTRET ) } ) e como a classe gera o xml: <imposto> <vTotTrib>13.71</vTotTrib> <ICMS> <ICMSSN500> <orig>0</orig> <CSOSN>500</CSOSN> <vBCSTRet>0</vBCSTRet> <pST>0</pST> <vICMSSTRet>0</vICMSSTRet> <vICMSSubstituto>0</vICMSSubstituto> <vBCFCPSTRet>0</vBCFCPSTRet> <pFCPSTRet>0</pFCPSTRet> <vFCPSTRet>0</vFCPSTRet> </ICMSSN500> </ICMS> Alguém poderia dar alguma dica? Obrigado.
  12. Olá, eu fiz o teste da rotina abaixo, e guardou o ultimo arquivo, da lista, na área de transferência. aFiles := xGetFiles("Todos (*.*)|*.*|", "Selecione o arquivo(x)", 1, "", .F. ) define ClipBoard oClp of odlg // odlg é um dialog desta rotina for i=1 to len(aFiles) oClp:SetText( aFiles[1] ) next para guardar todos os nomes dos arquivos da pasta lida, vc deve concatena-los.
  13. Faz assim define ClipBoard oCopiar of objetododialogo // esse comando só pode ser dado uma vez, senao, o comando anterior será desfeito. ------------ aFiles := xGetFiles("Todos (*.*)|*.*|", "Selecione o arquivo(x)", 1, "", .F. ) // oClp:=TClipboard():New() // oClp:Clear() define ClipBoard oClp of objetodasuajanela_ou_dialog for i=1 to len(aFiles) oClp:SetText( aFiles[1] ) next
  14. cria um segundo campo, na ficha do produto, para inserir uma segunda descrição e você usa uma para cada caso.
  15. Fala com o Eroni, aqui do fórum. ele tem as rotinas, que ele comercializa.
  16. Pessoal, isso é um crime gravíssimo e fácil de ser pego. OU não envia, ou faz tudo certinho.
  17. mkyx

    e-social

    Oliveiros: nessa rotina de envio do e-social, não falta a linha onde define o certificado? essa linha: oServer:setOption( 3, "CURRENT_USER\MY\" + ::cCertificado ) ------------------------------- oServer:Open( "POST", cURL_Envio, .F. ) oServer:SetRequestHeader( "SOAPAction", cSOAPAction ) oServer:SetRequestHeader( "Content-Type", "text/xml; charset=utf-8" ) ???
  18. mkyx

    e-social

    referente ao erro 400, olhem o que diz, em perguntas e repostas no site do e-social: 01.05 - (11/01/2018) Tentando a conexão com o Webservice, o serviço retorna: “a solicitação falhou com status HTTP 400: Bad Request”. Por quê? Acessos que retornam falhas de status HTTP 400 são por motivo de solicitação inválida. A solicitação não pôde ser entendida pelo servidor devido à sintaxe incorreta, sendo aconselhado não repetir a solicitação sem os devidos ajustes. Deve ser utilizada exatamente a URL divulgada no portal do eSocial e no Manual de Orientação do Desenvolvedor. Os motivos de falhas HTTP podem ser encontrados em sites de pesquisa, veja esta URL, por exemplo: https://support.microsoft.com/pt-br/help/943891/the-http-status-code-in-iis-7-0--iis-7-5--and-iis-8-0. Além disso, é importante verificar a seção "7.9. Certificação digital" do Manual de Orientação do Desenvolvedor, disponível na área de Documentação Técnica.
  19. Deve ser semelhante à comunicação com balança pelo com1: ou com2: para balança, eu tenho uma rotina que lê a porta serial: function pegapeso() ** LEITURA DA PORTA NHANDLE:=Init_Port("COM1",9600,8,0,1,8000) OutBufClr(NHANDLE) // Limpa o Buffer de Saida OUTCHR(NHANDLE,CHR(5)) SYSWAIT(0.3) Bytes := InbufSize(NHANDLE) DADOS=SPACE(20) Buffer := InChr( NHANDLE, Bytes, @DADOS) UnInt_Port(nHandle) dados=alltrim(dados) ** tratamento das informações lidas, na variável DADOS Q=val(substr(dados,2,5))/1000 n1:="" for i=1 to len(dados) i0:=substr(dados,i,1) if i0$"0987654321." n1:=n1+i0 endif next q:=val(n1) IF Q<=0 Q:=0 ENDIF RETURN Q Talvez sirva para você.
  20. Quando isso acontece comigo, eu examino, o tratamento do horário de verão. Como eu uso a dll da flexdocs, então, atualizo essa dll. Analiso, a data e o horário do computador. Eu acesso, o link abaixo, para conferir, data e hora: http://www.horariodebrasilia.org
  21. mkyx

    e-social

    tem algo no link abaixo, que pode ajudar https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Status/400
  22. Boa noite, pessoal Será que a data para e-Social será realmente, 10-01-2019? Alguém daqui do grupo, já conseguiu desenvolver, que pudesse comercializar? Favor contatar no e-mail: pardes.mky@hotmail.com Obrigado. Pompeo Guaratinguetá - SP
  23. mkyx

    Bloco K

    bloco K, do ecf ou ecd?
  24. use uso assim: e_esta:=.F. if select("ARQ_VETRA")=0 e_esta:=.T. ELSE SELECT ARQ_VETRA endif cSqlQ:="SELECT * FROM VETRA_CLI WHERE CODIGO="+CHR(34)+alltrim(STR(COD))+CHR(34)+";" dbUseArea(e_esta, "SQLRDD", cSqlQ, "ARQ_VETRA") IF ARQ_VETRA->(EOF()) ? "FIM DE ARQUIVO, VAZIO" ELSE ? "COLOQUE AQUI OS COMANDO PARA MANIPULAR OS REGISTROS ENCONTRADOS" ENDIF
  25. Com o surgimento do Windows. Os dbf, que forma feito para a plataforma DOS, não combinam com a plataforma Windows, logo, o correto, é usar os comandos mysql, como: select, update, delete, insert, etc, pode ser o puro ou via sqlrdd, eu estou migrando tudo para mysql via sqlrdd.
×
×
  • Create New...