PowerBuilder
PowerBuilder
Verify Factura Electronica Chile SII (iso-8859-1)
See more XAdES Examples
Demonstrates how to verify SII XML stored as iso-8859-1 having just a single signature.Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
oleobject loo_SbXml
oleobject loo_Dsig
integer li_BVerifyReferenceDigests
integer li_BVerified
li_Success = 0
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// The signed XML to be verified in this example contains the following:
// <?xml version="1.0" encoding="ISO-8859-1"?>
// <DTE version="1.0" xmlns="http://www.sii.cl/SiiDte">
// <Documento ID="F13T34">
// ...
// </Documento>
// <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
// ....
// </Signature>
// </DTE>
// Load the signed XML into sbXml -- telling Chilkat to interpret the bytes as iso-8859-1
loo_SbXml = create oleobject
li_rc = loo_SbXml.ConnectToNewObject("Chilkat.StringBuilder")
if li_rc < 0 then
destroy loo_SbXml
MessageBox("Error","Connecting to COM object failed")
return
end if
li_Success = loo_SbXml.LoadFile("qa_data/xml_dsig/sii_cl/signed1.xml","iso-8859-1")
if li_Success = 0 then
Write-Debug "Failed to load input file."
destroy loo_SbXml
return
end if
loo_Dsig = create oleobject
li_rc = loo_Dsig.ConnectToNewObject("Chilkat.XmlDSig")
li_Success = loo_Dsig.LoadSignatureSb(loo_SbXml)
if li_Success <> 1 then
Write-Debug loo_Dsig.LastErrorText
destroy loo_SbXml
destroy loo_Dsig
return
end if
li_BVerifyReferenceDigests = 1
li_BVerified = loo_Dsig.VerifySignature(li_BVerifyReferenceDigests)
if li_BVerified = 0 then
Write-Debug loo_Dsig.LastErrorText
destroy loo_SbXml
destroy loo_Dsig
return
end if
Write-Debug "Signature verified = " + string(li_BVerified)
destroy loo_SbXml
destroy loo_Dsig