Page 1 of 1

Richedit

Posted: Sun Jan 01, 2017 6:51 pm
by Wanderson
Olá,

Pode richedit exibir uno xml con identação?

Gracias.

Re: Richedit

Posted: Tue Jan 03, 2017 4:48 pm
by karinha
Eu prefiro, usando ACTIVEX:

Code: Select all

////////////////////////////////////////////////////////////////////////////////
// inserido/alterado por: #toya:23/04/2011:09:54 Criacao by Toya
// MODIFICADO EM: 23/06/2016 Por: Joao
////////////////////////////////////////////////////////////////////////////////
// FUNCTION NFeZtip3()  // original toya
FUNCTION WEBDANFE()  // incluido em: 18/07/2013

   LOCAL  cNFeHtml:=CurDrive()+":\"+CurDir()+"\nfehtml.htm"
   LOCAL cTexto:="", cNFeXml:="", cArquivoNFeXml
   LOCAL oDlg, oBtn, oXmlDoc, oTxt, oFnt, oFont, cPathXml

   LCHDIR( cDirPleno )
   SET DEFAULT TO

   cPathXml := cDirPleno + "\REMESSA\PROTOCOLOS\"+"*.XML"

   // MODIFIQUEI PARA GERAR *.PDF VIA WEBDANFE EM: 22/06/2016 - Joao
   // SetResources("nfeztip3.dll")  // direto no arquivo .res

   //cArquivoNFeXml:=cGetFile("Arquivo XML (*.Xml)|*.Xml|","Selecione o arquivo XML da NFe ", CurDir())
   cArquivoNFeXml := cGetFile( cPathXml, "Selecione o Arquivo XML da NFe em: " + ;
                               cDirPleno + "\REMESSA\PROTOCOLOS" )

   IF FILE( cArquivoNFeXml )

      cTexto+="<html>"+CRLF
      cTexto+="<head>"+CRLF
      cTexto+='<meta http-equiv="Content-Type" content="text/html; charset=utf-8">'+CRLF
      cTexto+="</head>"+CRLF
      cTexto+="<body>"+CRLF

      // Mira se ejiste un site igual este en tu pais
      cTexto+='<form action="http://www.webdanfe.com.br/danfe/GeraDanfe.php" name="one" enctype="multipart/form-data" method="post">'+CRLF

      cTexto+='<input type="submit" value="enviar">'+CRLF
      cTexto+='<textarea name="arquivoXml" cols="150" rows="50" style="visibility:hidden" >'+CRLF

      oXmlDoc:=TXmlDocument():new()

      oXMlDoc:READ(MEMOREAD(cArquivoNFeXml))

      cTexto+=oXmlDoc:toString()
      cTexto+="</textarea>"+CRLF
      cTexto+="</form>"+CRLF
      cTexto+="<script>"+CRLF

      //===> descomente a linha abaixo para o arquivo ser enviado automaticamente para o WebDANFE
      cTexto+="document.one.submit();"+CRLF
      cTexto+="</script>"+CRLF
      cTexto+="</body>"+CRLF
      cTexto+="</html>"+CRLF

      FERASE( cNFeHtml )

      oTxt:=TTxtFile():New(cNFeHtml)
      oTxt:add(cTexto)
      oTxt:close()

      DEFINE FONT oFnt    NAME "Ms Sans Serif" SIZE 00, -12 BOLD
      DEFINE FONT oFont   NAME "Ms Sans Serif" SIZE 00, -14 BOLD

      DEFINE DIALOG oDlg RESOURCE "ACTIVEX" ICON "ICONE" ;
             COLORS CLR_BLACK, CLR_WHITE TRANSPARENT

      oDlg:lHelpIcon    := .F.
      oDlg:Cargo        := .F.
      oDlg:lTransparent := .T.

      REDEFINE ACTIVEX oAcTiveX ID 101 OF oDlg PROGID "Shell.Explorer"

      REDEFINE BUTTON oBtn ID 520 OF oDlg PROMPT "&Saida" ;
               ACTION( oDlg:End() ) CANCEL

      oBtn:cToolTip := "Saida - Exit - Cancelar"

      SET FONT OF oBtn        TO oFont

      // ACTIVATE DIALOG oDlg CENTER ON INIT (oAcTiveX&#058;Do("NAVIGATE", cNFeHtml))
      ACTIVATE DIALOG oDlg CENTER ;
         ON INIT MsgWait( ( oAcTiveX&#058;Do("NAVIGATE", cNFeHtml ) ), ;
                            "AGUARDE UM MOMENTO POR FAVOR...", 2.5 )

      oFnt:End()
      oFont:End()

   ELSE

      MessageBox(GetActiveWindow(), "Arquivo "+cArquivoNFeXml+" Não Localizado...", "Atenção", nOR(16,0))

   ENDIF

RETURN NIL
 
Resource:

Code: Select all

ACTIVEX DIALOG 8, 66, 592, 278
STYLE DS_ABSALIGN | DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Activex - Visualizar o *.XML em  *.PDF Usando WEBDANFE - Passe o Mouse no Topo  Para Ver os Botões do Adobe."
FONT 8, "MS Sans Serif"
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
{
 CONTROL "", 101, "TActiveX", 0 | WS_CHILD | WS_VISIBLE, 10, 24, 572, 248
 CONTROL "Button", 520, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 532, 6, 50, 14
}
 

Re: Richedit

Posted: Tue Jan 03, 2017 4:53 pm
by cnavarro
Wanderson wrote:Olá,

Pode richedit exibir uno xml con identação?

Gracias.
Creo que si, pero, puedes poner un ejemplo de tu fichero xml?