Output from TransformMethod() incomplete.

KB-20220529-01

Version

Before XFRX 22.0

Symptoms

  • XFRX#LISTENER
  • Target type is XFF.
  • Target file name is filled.
  • Target file exists and CDX file is damaged.

Cause

Weird bug in VFP. VFP doesn't replace the CDX file when calling COPY TO [file] WITH CDX.

XFRX#LISTENER for target type XFF use a cursor. XFRX#LISTENER copies the XFF cursor to a XFF table after processing last report. 

Workaround

Don't set value of  TargetFilename property.
loListener = XFRX('XFRX#LISTENER')
loListener.TargetType = 'XFF'
loListener.TargetFileName = "" && "some.xff"

report form ("report") object loListener

loXFF = loListener.oXFDocument
loListener.SetParams("report.pdf", '', .T., '', .T., .F., 'PDF')
loListener.TransformReport(loXFF)