呃,书面删除() $xmlWriter.WriteEndDocument() $xmlWriter.Flush() $xmlWriter.Close() 您找到解决方案了吗?我正在研究相同的问题,到目前为止还没有找到任何能够创建OFX文件的.net库。您找
呃,书面删除() $xmlWriter.WriteEndDocument() $xmlWriter.Flush() $xmlWriter.Close()呃,书面删除() $xmlWriter.WriteEndDocument() $xmlWriter.Flush() $xmlWriter.Close() 您找到解决方案了吗?我正在研究相同的问题,到目前为止还没有找到任何能够创建OFX文件的.net库。您找,xml,powershell,sgml,Xml,Powershell,Sgml,呃,书面删除() $xmlWriter.WriteEndDocument() $xmlWriter.Flush() $xmlWriter.Close() 您找到解决方案了吗?我正在研究相同的问题,到目前为止还没有找到任何能够创建OFX文件的.net库。您找到解决方案了吗?我正在研究相同的问题,到目前为止还没有发现任何.net库能够提供创建OFX文件的功能。 OFXHEADER:100 DATA:OFXSGML VERSION:102 SECURITY:NONE ENCODING:USASCII
您找到解决方案了吗?我正在研究相同的问题,到目前为止还没有找到任何能够创建OFX文件的.net库。您找到解决方案了吗?我正在研究相同的问题,到目前为止还没有发现任何.net库能够提供创建OFX文件的功能。
OFXHEADER:100
DATA:OFXSGML
VERSION:102
SECURITY:NONE
ENCODING:USASCII
CHARSET:1252
COMPRESSION:NONE
OLDFILEUID:
NEWFILEUID:
<OFX>
<SIGNONMSGSRSV1>
<SONRS>
<STATUS>
<CODE>0
<SEVERITY>INFO
<MESSAGE>OK
</STATUS>
<DTSERVER>2007126895412
<USERKEY>20075698742365
<LANGUAGE>ENG
<INTU.BID>00004
</SONRS>
</SIGNONMSGSRSV1>
<CREDITCARDMSGSRSV1>
<CCSTMTTRNRS>
<TRNUID>12345678
<STATUS>
<CODE>0
<SEVERITY>INFO
<MESSAGE>OK
</STATUS>
<CCSTMTRS>
<CURDEF>GBP
<CCACCTFROM>
<ACCTID>12345678
</CCACCTFROM>
<BANKTRANLIST>
<DTSTART>20191201
<DTEND>20201231
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20200408
<TRNAMT>11.98
<REFNUM>000173160-0000810
<FITID>000173160-0000810
<NAME>FBAAMZUK
<MEMO>CHK
<CHECKNUM>000173160-0000810
</STMTTRN>
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20200408
<TRNAMT>6.99
<REFNUM>000173160-0000968
<FITID>000173160-0000968
<NAME>FBAAMZUK
<MEMO>CHK
<CHECKNUM>000173160-0000968
</STMTTRN>
<STMTTRN>
<TRNTYPE>CREDIT
<DTPOSTED>20200408
<TRNAMT>50.00
<REFNUM>0123-0123
<FITID>0123-0123
<NAME>FBAAMZUK
<MEMO>TEST
</STMTTRN>
</BANKTRANLIST>
<LEDGERBAL>
<xBALAMT>0.00
<BALAMT>18.97
<DTASOF>20200414
</LEDGERBAL>
<AVAILBAL>
<xBALAMT>0.00
<BALAMT>-4323.81
<DTASOF>20200414
</AVAILBAL>
</CCSTMTRS>
</CCSTMTTRNRS>
</CREDITCARDMSGSRSV1>
</OFX>
$Path = "C:\scripts\TEST.xml"
#SQL Connection
$sqlConn = New-Object System.Data.SqlClient.SqlConnection
$sqlConn.ConnectionString = “Server=xxxxxx;Integrated Security=true;Initial Catalog=master”
$sqlConn.Open()
#SQL Command
$sqlcmd = $sqlConn.CreateCommand()
$sqlcmd = New-Object System.Data.SqlClient.SqlCommand
$sqlcmd.Connection = $sqlConn
#SQL query
$query = “SELECT
payments.[order-id],
payments.[settlement-id],
replace(convert (date, payments.[posted-date],103),'-','') AS [posted-date],
payments.[transaction-type],
payments.[marketplace-name],
SUM (CAST(payments.amount AS money)) AS amount
FROM xxxxxx.dbo.PAYMENTS
where [amount-type] <> 'ItemFees' AND ([transaction-type] = 'Order' OR [transaction-type] = 'Refund')
GROUP BY [order-id], [settlement-id],[posted-date],[transaction-type],[marketplace-name]”
$sqlcmd.CommandText = $query
#SQL adapter
$adp = New-Object System.Data.SqlClient.SqlDataAdapter $sqlcmd
#Get data and fill data set
$data = New-Object System.Data.DataSet
$adp.Fill($data) | Out-Null
$dataSet = $data.Tables[0]
$sqlConn.Close()
# get an XMLTextWriter to create the XML
$XmlWriter = New-Object System.XMl.XmlTextWriter($Path,$Null)
# XML formatting
$xmlWriter.Formatting = 'Indented'
$xmlWriter.Indentation = 1
$XmlWriter.IndentChar = "`t"
# write the header
$xmlWriter.WriteStartDocument()
# set XSL statements
$xmlWriter.WriteProcessingInstruction("xml-stylesheet", "type='text/xsl' href='style.xsl'")
# create root element "OFX" and add some attributes to it
$xmlWriter.WriteStartElement('OFX')
$xmlWriter.WriteStartElement('SIGNONMSGSRSV1')
$xmlWriter.WriteStartElement('SONRS')
$xmlWriter.WriteStartElement('STATUS')
$XmlWriter.WriteElementString('CODE', '0')
$XmlWriter.WriteElementString('SEVERITY', 'INFO')
$XmlWriter.WriteElementString('MESSAGE', 'OK')
$xmlWriter.WriteEndElement()
$XmlWriter.WriteElementString('DTSERVER', '2007126895412')
$XmlWriter.WriteElementString('USERKEY', '20075698742365')
$XmlWriter.WriteElementString('LANGUAGE', 'ENG')
$XmlWriter.WriteElementString('INTU.BID', '00004')
$xmlWriter.WriteEndElement()
$xmlWriter.WriteEndElement()
$xmlWriter.WriteStartElement('CREDITCARDMSGSRSV1')
$xmlWriter.WriteStartElement('CCSTMTTRNRS')
$XmlWriter.WriteElementString('TRNUID', '12345678')
$xmlWriter.WriteStartElement('STATUS')
$XmlWriter.WriteElementString('CODE', '0')
$XmlWriter.WriteElementString('SEVERITY', 'INFO')
$XmlWriter.WriteElementString('MESSAGE', 'OK')
$xmlWriter.WriteEndElement()
$xmlWriter.WriteStartElement('CCSTMTRS')
$XmlWriter.WriteElementString('CURDEF', 'GBP')
$xmlWriter.WriteStartElement('CCACCTFROM')
$XmlWriter.WriteElementString('ACCTID', '12345678')
$xmlWriter.WriteEndElement()
$xmlWriter.WriteStartElement('BANKTRANLIST')
$XmlWriter.WriteElementString('DTSTART', '20191201')
$XmlWriter.WriteElementString('DTEND', '20201231')
foreach ($row in $dataSet)
{
$order_id = $row.'order-id'
$amt = $row.amount
$dateP = $row.'posted-date'
$xmlWriter.WriteStartElement('STMTTRN')
$XmlWriter.WriteElementString('TRNTYPE', 'CREDIT')
$XmlWriter.WriteElementString('DTPOSTED', $dateP)
$XmlWriter.WriteElementString('TRNAMT', $amt)
$XmlWriter.WriteElementString('REFNUM', $order_id)
$XmlWriter.WriteElementString('FITID', '000173160-0000810')
$XmlWriter.WriteElementString('NAME', 'FBAAMZUK')
$XmlWriter.WriteElementString('MEMO', 'CHK')
$XmlWriter.WriteElementString('CHECKNUM', '000173160-0000810')
$xmlWriter.WriteEndElement()
}
$xmlWriter.WriteEndElement()
$xmlWriter.WriteStartElement('LEDGERBAL')
$XmlWriter.WriteElementString('xBALAMT', '0.00')
$XmlWriter.WriteElementString('BALAMT', '18.97')
$XmlWriter.WriteElementString('DTASOF', '20200414')
$xmlWriter.WriteEndElement()
$xmlWriter.WriteStartElement('AVAILBAL')
$XmlWriter.WriteElementString('xBALAMT', '0.00')
$XmlWriter.WriteElementString('BALAMT', '-4323.81')
$XmlWriter.WriteElementString('DTASOF', '20200414')
$xmlWriter.WriteEndElement()
$xmlWriter.WriteEndElement()
$xmlWriter.WriteEndElement()
$xmlWriter.WriteEndElement()
$xmlWriter.WriteEndElement()
$xmlWriter.WriteEndDocument()
$xmlWriter.Flush()
$xmlWriter.Close()