Jump to content
Fivewin Brasil

lucimauromelo

Membros
  • Posts

    44
  • Joined

  • Last visited

  • Days Won

    1

Reputation Activity

  1. Like
    lucimauromelo reacted to emotta in Atualizar Versao do Sistema   
    segue a funcao CompFile que retorna se os arquivos são iguais ou diferentes
     
    Function Teste() Local cFile1 := "arq1.txt" Local cFile2 := "arq2.txt" Local cFile3 := "arq3.txt" Local cCont1 := "testando texto para arquivo 1" Local cCont2 := "testando texto para arquivo 1" Local cCont3 := "testando texto para arquivo 3"   MemoWrit(cFile1, cCont1) MemoWrit(cFile2, cCont2) MemoWrit(cFile3, cCont3)   If CompFile(cFile1, cFile2)   ? cFile1 + " é igual a " + cFile2 Else   ? cFile1 + " é diferente de " + cFile2 EndIf   If CompFile(cFile1, cFile3)   ? cFile1 + " é igual a " + cFile3 Else   ? cFile1 + " é diferente de " + cFile3 EndIf   ? "fim" return   Static Function CompFile(cFile1, cFile2) Local cHash1 := HB_MD5File( cFile1 ) Local cHash2 := HB_MD5File( cFile2 )   Return cHash1 == cHash2
  2. Like
    lucimauromelo reacted to vailtom in DICA: Exemplo de como fazer HTTP PUT usando cURL   
    Olá,
    Recentemente integramos a API de loja virtual da Tray com nosso software e alguns aspectos foram bem nebulosos, por isto quero dividir com vocês uma dica super útil para casos como este, onde é necessário realizar um HTTP PUT usando lib cUrl.
    Segue o exemplo de código que demonstra o trecho mais importante: 
    FUNCTION Tray_UpdateEstoque( sku_id, nEstoque, access_token ) LOCAL cEndPoint := 'https://666.commercesuite.com.br/web_api/products/'+alltrim(str(sku_id))+'?access_token='+access_token LOCAL cData := '{"Product": {"stock": '+ALLTRIM(STR(nEstoque))+'}}' LOCAL curl LOCAL nRet LOCAL Buff LOCAL Resp IF !empty( curl := curl_easy_init() ) curl_easy_setopt( curl, HB_CURLOPT_HTTPHEADER, {"Content-Type:application/json"} ) curl_easy_setopt( curl, HB_CURLOPT_CUSTOMREQUEST, 'PUT') curl_easy_setopt( curl, HB_CURLOPT_URL, cEndPoint ) curl_easy_setopt( curl, HB_CURLOPT_POSTFIELDS, cData ) curl_easy_setopt( curl, HB_CURLOPT_FOLLOWLOCATION, 1) curl_easy_setopt( curl, HB_CURLOPT_DL_BUFF_SETUP ) curl_easy_setopt( curl, HB_CURLOPT_SSL_VERIFYPEER, 0 ) curl_easy_setopt( curl, HB_CURLOPT_SSL_VERIFYHOST, 0 ) nRet := curl_easy_perform( curl ) Buff := curl_easy_dl_buff_get( curl ) curl_easy_cleanup( curl ) IF (nRet == HB_CURLE_OK) hb_jsonDecode( Buff, @Resp ) ENDIF ELSE RETURN .F. ENDIF IF !HB_ISHASH(Resp) ? Buff // Exibe na tela a mensagem de erro obtida RETURN .F. ENDIF * Retorno em caso de sucesso (status code 200 ou 201) nRet := Resp['code'] RETURN (nRet == 200 .OR. nRet == 201) Em nosso caso utilizamos o compilador Harbour, mas, isto deve servir como base para você caso use outros compiladores.
    Espero ter ajudado.
  3. Like
    lucimauromelo got a reaction from rochinha in Alguém usa o activex XHbCom.HbConnection?   
    Mediator eu uso,  voce  trabalha com os  comando normais para dbf mais acessando o banco MYSQL , podendo também usar comando diretos no mysql.
    Existe a versão free para mysql que suporta ate 100 conexões  e  para outros bancos acho que 5 conexões ou comprar a versão paga.
  4. Like
    lucimauromelo got a reaction from aferra in provedor bol   
    Bom dia,
    Realmente quem não tiver assinatura do provedor bol não conseguira  mais envia email por APP, somente pelo próprio site, essa e a nova regra deles.
  5. Like
    lucimauromelo got a reaction from Ronaldbuch in Curso Ferramenta Windev   
    @Jorge Andrade
    Jorge você poderia me mandar por e-mail e grátis o curso?
×
×
  • Create New...