Annotations des développeurs

Syndiquer le contenu
Annotations des développeurs sur les documents en ligne de l'aide de WinDev, WebDev et WinDev Mobile
Mis à jour : il y a 16 semaines 4 jours

Assinatura Digital nfe - Parte 3/... - Assinar Documento

27 juin, 2016 - 12:40
Nessa aula vou Mostrar como Assinar um Documento Xml This lesson will show how Subscribe to a XML Document Cette leçon montrera comment Abonnez-vous à un document XML //-- //Buscar arquivo xml a assinar // search xml file to sign // rechercher ujn fichier xml pourr signer _xml_assinar is string=fLoadText("D:\arquivo_xml\43160603850874000126550010000035551000142204-nfe.xml",foUnicode) EDT_xml=_xml_assinar sRefuri is string="infNFe" chavenfe is string="NFe43160603850874000126550010000035551000142204" s_retorno is string=assinar_nfe(_xml_assinar,sRefuri,chavenfe) IF s_retorno=-1 THEN EDT_xml_assinado="Erro assinar" ELSE EDT_xml_assinado=s_retorno END //-- PROCEDURE assinar_nfe(_recebe_xml,_refUri,_ChNfe) //_refUri= (sRefUri IS STRING = "infNFe") clX509certi is X509Certificate2("D:\certificado_2016\certificado.pfx","senha") clDoc is System.Xml.XmlDocument; clDoc.LoadXml(_recebe_xml) // Ler um arquivo Xml // read an xml file // lire un fichir xml // //certificado com endereco e senha //certificate with address and password //le certificat avec adresse et mot de pass //ver se Refuri existe //Refers to see there //fait référence à y voir qtderefuri is int= clDoc.GetElementsByTagName(_refUri).Count IF (qtderefuri) =0 THEN //nao existe // does not exists // ne pas exister ELSE //cria um objeto assinado // creat a signed object // créer un objet signé VrSignedXml is SignedXml(clDoc) // adiciona a chave do certificado // add the key certificate // ajouter le certificat de clé VrSignedXml.SigningKey = clX509certi.PrivateKey // Cria a referencia para assinatura // creates a reference to signature // crée une référence à la signature Reference is Reference //= new Reference(); Reference.Uri = "#" + _ChNfe // adiciona um XmlDsigEnvelopedSignatureTransform para a assinatura // add a XmlDsigEnvelopedSignatureTransform for signature // ajouter un XmlDsigEnvelopedSignatureTransform à la signature Env is XmlDsigEnvelopedSignatureTransform Reference.AddTransform(Env) c14 is XmlDsigC14NTransform Reference.AddTransform(c14) // adiciona a referencia no xml assinado // add the reference in xlm signed // ajouter la référence en xml singé VrSignedXml.AddReference(Reference) // Cria a chave // creates the key // crée la clé VrkeyInfo is KeyInfo // carrega o certificado em um keyinfox509 e adiciona ao keyinfo // load the certificate in a keyinfo x509 and add to keyinfo // chager le certificat dans un x509 keyinfo et ajouter à kyinfo VrkeyInfo.AddClause(new KeyInfoX509Data(clX509certi)) // adiciona o keyinfo ao xml assinado // add keyinfo the xml signed // ajouter keyinfo le xml signé VrSignedXml.KeyInfo = VrkeyInfo VrSignedXml.ComputeSignature() // busca a representacao XML da assinatura e salva no XML // search the xml representantion of the signature and saved in xml // rechercher la représentation xml de la signature et enregistré en xml xmlDigitalSignature is System.Xml.XmlElement dynamic = VrSignedXml.GetXml() // adiciona a assinatura no documento // add the signature in the document // ajouter la signature dans le document clDoc.DocumentElement.AppendChild(clDoc.ImportNode(xmlDigitalSignature, True)) //salva o documento assinado // save the signed document // enregistrer le document signé RESULT clDoc.get_InnerXml() END RESULT -1 //-- //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-certificado-007-assinatura.html https://www.youtube.com/watch?v=uVLpstx5cRk
Catégories: Aide en ligne

Exemplo System.Xml.XmlDocument

24 juin, 2016 - 11:28
Exemplo System.Xml.XmlDocument //Assinar //sign //signe s_xml_assinar is string=EDT_xml // ou em arquivo assinar_nfe(s_xml_assinar) //--------------- PROCEDURE assinar_nfe(_recebe_xml) Doc is System.Xml.XmlDocument; Info(_recebe_xml) //Doc est system.xml.xmldocument; //Blog com video e exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-certificado-006-assinatura.html https://www.youtube.com/watch?v=uDWDD7c2U9E
Catégories: Aide en ligne

Équivalence VB6

23 juin, 2016 - 16:12
MULTITÂCHE(-1) semble faire le même travail que DOEVENT en VB6
Catégories: Aide en ligne

Ler Tabela Cliente e Gravar Txt Mobile

23 juin, 2016 - 12:57
Ler Tabela Cliente e Gravar Txt Mobile //Nessa aula vou ensinar como ler tabela cliente e gravar em txt no Mobile //This class will teach how to read and write customer table in txt in Mobile //Cette classe vous apprendra à lire et à écrire la table des clients dans txt à Mobile s_nome_arquivo is string=CompleteDir(fCurrentDir())+"nome_arquivo.txt" n_arquivo is int=fCreate(s_nome_arquivo) //ver se arquivo deu erro IF n_arquivo=-1 THEN Info("erro na criação arquivo",ErrorInfo()) RETURN END s_monta is string="" FOR EACH ROW OF TABLE_Cliente HReadSeekFirst(cliente,id_cliente,TABLE_Cliente.COL_Id_cliente) s_monta+="DADOS|" s_monta+=cliente.id_cliente+"|" s_monta+=cliente.razao_social_nome+"|" s_monta+=cliente.telefone+CR END s_monta+="FIM|" EDT_Texto_importar=s_monta fSaveText(s_nome_arquivo,s_monta) //proxima aula vou ler o txt e gravar no arquivo //next class will read the .txt and write to the file //la classe suivante va lire le .txt et écrire dans le fichier //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/windev-mobile-65-matos-pedido-20-ler.html https://www.youtube.com/watch?v=WQa93EJSGyE
Catégories: Aide en ligne

Example: HTTPCreateForm / HTTPSendForm / HTTPRequest

20 juin, 2016 - 17:14
//Example //Identify the screen field name of html code sPostParameter is string = "name = Adriano" IF HTTPRequest("www.mysite.com", "", "", sPostParameter) = True THEN Info("Request OK, result:", HTMLToText(HTTPGetResult(httpResult))) END HTTPCreateForm("FORM") HTTPAddParameter("FORM", "name", "Adriano") IF HTTPSendForm("FORM","www.mysite.com" ) = True THEN Info("Request OK, result:", HTMLToText(HTTPGetResult(httpResult))) END
Catégories: Aide en ligne

Exemplo Chamar Certificado Arquivo Pfx

20 juin, 2016 - 13:31
//Selecionar o Certificado //Select the certificate //Spelectionnez le certificat //Pegados Dados Do Certificado //taking certificate dice //Prenant certificat dice _certificado is Certificate // certificate // certificat // IF EDT_certificado_digitado="" THEN //Vai procurar certificado no Windows //Will seek certificate in Windows //Cherchera certificat dans Windows _certificado = CertificateSelect() ELSE //Vai buscar o arqivo certificado pfx //Go get the certificate file pfx //Allez chercher le fichier de certificat .pfx arr_certificado is array of Certificates arr_certificado = CertificateLoad(EDT_certificado_digitado,EDT_SenhaCertificado) _certificado=arr_certificado[1] END s_retorno_certificado is string="" // s_retorno certificate // certificat s_retorn verifica_certificado() // check certificate // chèque certificat IF s_retorno_certificado="Certificado Valido" THEN dados_certificado() // certificate data //données de certificat END INTERNAL PROCEDURE verifica_certificado() IF _certificado..Name="" THEN s_retorno_certificado="Erro" Info(s_retorno_certificado) RETURN END IF _certificado..ValidForSignature=False THEN s_retorno_certificado="O Certificado selecionado não pode ser utilizado para gerar uma assinatura" Info(s_retorno_certificado) RETURN END SWITCH _certificado..Reliability CASE certificateOk: s_retorno_certificado="Certificado Valido" CASE certificateInvalid: s_retorno_certificado="Certificado invalidido" CASE certificateUntrusted: s_retorno_certificado="Certificado Nao Confiavel" CASE certificateExpired: s_retorno_certificado="Expirado Certificado" END Info(s_retorno_certificado) END INTERNAL PROCEDURE dados_certificado() EDT_DadosDoCertificado="" // Limpando edt do certificado // cleaning edt certificate // certificat edt nettoyage EDT_DadosDoCertificado+="=====NOVOS WINDEV 21 ===============" //Novos Windev 21//new windev 21// EDT_DadosDoCertificado+=CR+"Nome Completo Emissor [ "+_certificado.FullIssuer+" ] " EDT_DadosDoCertificado+=CR+"Numero Associado ["+_certificado.Empreinte+" ]" // Em Frances // Em Ingles (Fingerprint) EDT_DadosDoCertificado+=CR+"-Objeto [ "+_certificado.objet+" ]" // Em Frances // Em Ingles ( object ) EDT_DadosDoCertificado+=CR+"===== Já tinha Windev 20 ===============" EDT_DadosDoCertificado+=CR+"Nome Resumido [ "+_certificado.Name+" ]" EDT_DadosDoCertificado+=CR+"Inicio Validade [ "+_certificado.StartValidityDate+" ]" EDT_DadosDoCertificado+=CR+"Final Validade [ "+_certificado.EndValidityDate+" ]" EDT_DadosDoCertificado+=CR+"Issuer- Emissora [ "+_certificado.Issuer+" ]" EDT_DadosDoCertificado+=CR+"Reliability-Confianca [ "+_certificado.Reliability+" ]" EDT_DadosDoCertificado+=CR+"Serial Numero [ "+_certificado.SerialNumber+" ]" EDT_DadosDoCertificado+=CR+"Certificado Valido [ "+_certificado.ValidForSignature+" ]" EDT_DadosDoCertificado+=CR+"Subject [ "+_certificado.Subject+" ]" EDT_DadosDoCertificado+=CR+"Thumprint - Impressão Digital [ "+_certificado.ThumbPrint+" ]" EDT_DadosDoCertificado+=CR+"======================================" END //Blog com Video e exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-certificado-004.html https://www.youtube.com/watch?v=TTMhHdWM7ig
Catégories: Aide en ligne

Exemplo Se certificado é válido

19 juin, 2016 - 02:55
//Exemplo Se certificado é válido //Example If the certificate is valid //Exemple Si le certificat est valide _certificado is Certificate _certificado = CertificateSelect() s_retorno_certificado is string="" // s_retorno certificate // certificat s_retorn verifica_certificado() // check certificate // chèque certificat IF s_retorno_certificado="Certificado Valido" THEN dados_certificado() // certificate data //données de certificat END INTERNAL PROCEDURE verifica_certificado() IF _certificado..Name="" THEN s_retorno_certificado="Erro" Info(s_retorno_certificado) RETURN END IF _certificado..ValidForSignature=False THEN s_retorno_certificado="O Certificado selecionado não pode ser utilizado para gerar uma assinatura" Info(s_retorno_certificado) RETURN END SWITCH _certificado..Reliability CASE certificateOk: s_retorno_certificado="Certificado Valido" CASE certificateInvalid: s_retorno_certificado="Certificado invalidido" CASE certificateUntrusted: s_retorno_certificado="Certificado Nao Confiavel" CASE certificateExpired: s_retorno_certificado="Expirado Certificado" END END INTERNAL PROCEDURE dados_certificado() EDT_DadosDoCertificado="" // Limpando edt do certificado // cleaning edt certificate // certificat edt nettoyage EDT_DadosDoCertificado+="=====NOVOS WINDEV 21 ==============" //Novos Windev 21//new windev 21// EDT_DadosDoCertificado+=CR+"Nome Completo Emissor [ "+_certificado.FullIssuer+" ] " EDT_DadosDoCertificado+=CR+"Numero Associado ["+_certificado.Empreinte+" ]" // Em Frances // Em Ingles (Fingerprint) EDT_DadosDoCertificado+=CR+"-Objeto [ "+_certificado.objet+" ]" // Em Frances // Em Ingles ( object ) EDT_DadosDoCertificado+=CR+"===== Já tinha Windev 20 =============" EDT_DadosDoCertificado+=CR+"Nome Resumido [ "+_certificado.Name+" ]" EDT_DadosDoCertificado+=CR+"Inicio Validade [ "+_certificado.StartValidityDate+" ]" EDT_DadosDoCertificado+=CR+"Final Validade [ "+_certificado.EndValidityDate+" ]" EDT_DadosDoCertificado+=CR+"Issuer- Emissora [ "+_certificado.Issuer+" ]" EDT_DadosDoCertificado+=CR+"Reliability-Confianca [ "+_certificado.Reliability+" ]" EDT_DadosDoCertificado+=CR+"Serial Numero [ "+_certificado.SerialNumber+" ]" EDT_DadosDoCertificado+=CR+"Certificado Valido [ "+_certificado.ValidForSignature+" ]" EDT_DadosDoCertificado+=CR+"Subject [ "+_certificado.Subject+" ]" EDT_DadosDoCertificado+=CR+"Thumprint - Impressão Digital [ "+_certificado.ThumbPrint+" ]" EDT_DadosDoCertificado+=CR+"======================================" END //Blog com Video e exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-certificado-003-ver-se.html https://www.youtube.com/watch?v=kE0T04bbxz4
Catégories: Aide en ligne

J'ai des difficultés à lire sur un port série de type carte d'extension PCI Express

16 juin, 2016 - 22:54
Bonsoir, existe-t-il une stratégie pour la lecture sur les ports série de type carte d'extension PCI Express. Je fais particulièrement face à un code qui marche très bien sur carte série standard mais qui lit partiellement les données sur cartes PCI Express.
Catégories: Aide en ligne

Exemplo pegar Dados Certificado

16 juin, 2016 - 20:21
//Example catch certificate data //Exemple certificat de capture de données _certificado is Certificate _certificado = CertificateSelect() EDT_DadosDoCertificado="" // Limpando edt do certificado EDT_DadosDoCertificado+="=====NOVOS WINDEV 21 ===============" //Novos Windev 21//new windev 21// EDT_DadosDoCertificado+=CR+"Nome Completo Emissor [ "+_certificado.FullIssuer+" ] " EDT_DadosDoCertificado+=CR+"Numero Associado ["+_certificado.Empreinte+" ]" // Em Frances // Em Ingles (Fingerprint) EDT_DadosDoCertificado+=CR+"-Objeto [ "+_certificado.Objet+" ]" // Em Frances // Em Ingles ( object ) EDT_DadosDoCertificado+=CR+"===== Já tinha Windev 20 ===============" EDT_DadosDoCertificado+=CR+"Nome Resumido [ "+_certificado.Name+" ]" EDT_DadosDoCertificado+=CR+"Inicio Validade [ +_certificado.StartValidityDate+" ]" EDT_DadosDoCertificado+=CR+"Final Validade [ "+_certificado.EndValidityDate+" ]" EDT_DadosDoCertificado+=CR+"Issuer- Emissora [ "+_certificado.Issuer+" ]" EDT_DadosDoCertificado+=CR+"Reliability-Confianca [ "+_certificado.Reliability+" ]" EDT_DadosDoCertificado+=CR+"Serial Numero [ "+_certificado.SerialNumber+" ]" EDT_DadosDoCertificado+=CR+"Certificado Valido [ "+_certificado.ValidForSignature+" ]" EDT_DadosDoCertificado+=CR+"Subject [ "+_certificado.Subject+" ]" EDT_DadosDoCertificado+=CR+"Thumprint - Impressão Digital [ "+_certificado.ThumbPrint+" ]" EDT_DadosDoCertificado+=CR+"======================================" //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-certificado-002.html https://www.youtube.com/watch?v=XYWltoQ8u4Q
Catégories: Aide en ligne

Récupération de la valeur d'un calcul dans un champ table

15 juin, 2016 - 21:48
L'expression [] ne tient pas compte du filtre établi avec la fonction TableActiveFiltre()
Catégories: Aide en ligne

Exemplo Selecionar Certificado

15 juin, 2016 - 13:19
//Selecionar o Certificado //Select the certificate //Spelectionnez le certificat _certificado is Certificate _certificado = CertificateSelect() //Em Frances //_certificado_f est un Certificat //_certificado_f = CertificatSélecteur() //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-certificado-001.html https://www.youtube.com/watch?v=p3rLl0SXMNg
Catégories: Aide en ligne

Affichage RTF sous WINDOWS 10

15 juin, 2016 - 12:21
Je suis sur windows 10 avec windev 19 J'ai résolu le problème du bug en utilisant le code suivant: "SaisieTexte="" RTFInsère(SaisieTexte,Messages.RTF,1)" SaisieTexte est un champs RTF en saisie et Message.RTF est un memo Texte.
Catégories: Aide en ligne

fonction inconnue

14 juin, 2016 - 17:05
l'utilisation de cette fonction me renvoie : Erreur :Identificateur 'FenEdSauvenote' inconnu ou inaccessible. Numero de serie : W21F150879 version du module : 21.0.100.0 version interne : 01f210039d doit on activer une option?
Catégories: Aide en ligne

Exemplo Tirando Enter Observação

14 juin, 2016 - 13:00
Exemplo Tirando Enter Observação //Vou Ler o Campo Observação e Tirar os Cr (Enter) //I will read the field note and taking the cr(Enter) //Je vais lire la note de terrain et prenant le CR (Entrée) EDT_resultado="" FOR EACH STRING s_resultado1 OF EDT_Observacao SEPAREE BY CR EDT_resultado+=s_resultado1 EDT_resultado+=" " END //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-string-013-tirando-enter.html https://www.youtube.com/watch?v=0FVxViLlDYc
Catégories: Aide en ligne

Exemplo TablePrint

9 juin, 2016 - 02:30
//Vou Imprimir Tabela Sem gerar nenhum Relatorio TablePrint(TABLE_tecnico) //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/windev-curso-relatorio-24-relatorio.html https://www.youtube.com/watch?v=WOinD5lDYH0
Catégories: Aide en ligne

Syntaxe pour grTableau

7 juin, 2016 - 18:00
Pour utiliser grTableau avec un tableau de structure, il faut utiliser la syntaxe suivante : grSourceSérie(MonGraphe,MaSérie,grTableau,"variable de type tableau de structure","nom du membre") Ne pas oublier de mettre la variable de type tableau de structure et le nom du membre entre " "
Catégories: Aide en ligne

Exemplo Pulo Página

7 juin, 2016 - 13:05
//Chamar Relatorio iPreview(ipvZoom100) // Mostrar Relatorio Tela iPrintReport(ETAT_pedido1) //chama Relatorio //Na Impreesao do Pedido //Fazer pula linha depois da quebra iPageEnd() //Blog com Video e Exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/windev-curso-relatorio-23-relatorio.html https://www.youtube.com/watch?v=TiR1rMDBhI4
Catégories: Aide en ligne

Exemplo Alterar Grafico Manualmente

6 juin, 2016 - 12:17
//Varios tipos de gráfico //Trocado via programação grType(CHART_Tecnico,gr3DSAreaStacked) grDraw(CHART_Tecnico) //Blog com video e exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/windev-grafico-3-alterar-tipo-de.html https://www.youtube.com/watch?v=Ek7pvVhvBfM
Catégories: Aide en ligne

Fonctions NFC sous windows CE

3 juin, 2016 - 22:59
Je viens de lire que les fcts du Wlangage relatives aux NFC ne sont utilisables que sur android. Qu'en est il pour les PDA sous Windows CE ?
Catégories: Aide en ligne

Exemplo ExeInfo

2 juin, 2016 - 13:09
//Versão desse programa s_versao_programa is string="" s_versao_programa=ExeInfo(exeVersion) //Versão do programa matos_utilitarios.exe s_versao_programa=ExeInfo(exeVersion,"D:\erpmatos\matos_utilitarios\matos_utilitarios.exe") //Versão do programa matos_utilitarios.exe 32 ou 64 s_versao_programa=ExeInfo(exeMode,"D:\erpmatos\matos_utilitarios\matos_utilitarios.exe") //Versão do programa matos_utilitarios.exe - pegar diretorio e nome s_versao_programa=ExeInfo(exeName,"D:\erpmatos\matos_utilitarios\matos_utilitarios.exe") //Versão do programa matos_utilitarios.exe - pegar nome diretorio s_versao_programa=ExeInfo(exeDirectory,"D:\erpmatos\matos_utilitarios\matos_utilitarios.exe") //Blog com Video e exemplo http://windevdesenvolvimento.blogspot.com.br/2016/06/curso-windev-funcoes-exe-windows-005.html https://www.youtube.com/watch?v=m5wOrLUt9Ik
Catégories: Aide en ligne