@@ -132,30 +132,28 @@ public override void Save(InvoiceDescriptor descriptor, Stream stream)
132
132
Writer . WriteEndElement ( ) ; // !BuyerOrderReferencedDocument
133
133
}
134
134
135
- if ( this . Descriptor . AdditionalReferencedDocuments != null )
136
- {
137
- foreach ( AdditionalReferencedDocument document in this . Descriptor . AdditionalReferencedDocuments )
138
- {
139
- Writer . WriteStartElement ( "ram:AdditionalReferencedDocument" ) ;
140
- if ( document . IssueDateTime . HasValue )
141
- {
142
- Writer . WriteStartElement ( "ram:IssueDateTime" ) ;
143
- //Writer.WriteStartElement("udt:DateTimeString");
144
- //Writer.WriteAttributeString("format", "102");
145
- Writer . WriteValue ( _formatDate ( document . IssueDateTime . Value , false ) ) ;
146
- //Writer.WriteEndElement(); // !udt:DateTimeString
147
- Writer . WriteEndElement ( ) ; // !IssueDateTime()
148
- }
135
+
136
+ foreach ( AdditionalReferencedDocument document in this . Descriptor . AdditionalReferencedDocuments )
137
+ {
138
+ Writer . WriteStartElement ( "ram:AdditionalReferencedDocument" ) ;
139
+ if ( document . IssueDateTime . HasValue )
140
+ {
141
+ Writer . WriteStartElement ( "ram:IssueDateTime" ) ;
142
+ //Writer.WriteStartElement("udt:DateTimeString");
143
+ //Writer.WriteAttributeString("format", "102");
144
+ Writer . WriteValue ( _formatDate ( document . IssueDateTime . Value , false ) ) ;
145
+ //Writer.WriteEndElement(); // !udt:DateTimeString
146
+ Writer . WriteEndElement ( ) ; // !IssueDateTime()
147
+ }
149
148
150
- if ( document . ReferenceTypeCode != ReferenceTypeCodes . Unknown )
151
- {
152
- Writer . WriteElementString ( "ram:TypeCode" , document . ReferenceTypeCode . EnumToString ( ) ) ;
153
- }
149
+ if ( document . ReferenceTypeCode != ReferenceTypeCodes . Unknown )
150
+ {
151
+ Writer . WriteElementString ( "ram:TypeCode" , document . ReferenceTypeCode . EnumToString ( ) ) ;
152
+ }
154
153
155
- Writer . WriteElementString ( "ram:ID" , document . ID ) ;
156
- Writer . WriteEndElement ( ) ; // !ram:AdditionalReferencedDocument
157
- } // !foreach(document)
158
- }
154
+ Writer . WriteElementString ( "ram:ID" , document . ID ) ;
155
+ Writer . WriteEndElement ( ) ; // !ram:AdditionalReferencedDocument
156
+ } // !foreach(document)
159
157
160
158
Writer . WriteEndElement ( ) ; // !ApplicableSupplyChainTradeAgreement
161
159
@@ -303,62 +301,56 @@ public override void Save(InvoiceDescriptor descriptor, Stream stream)
303
301
304
302
_writeOptionalTaxes ( Writer ) ;
305
303
306
- if ( ( this . Descriptor . GetTradeAllowanceCharges ( ) != null ) && ( this . Descriptor . GetTradeAllowanceCharges ( ) . Count > 0 ) )
304
+ foreach ( TradeAllowanceCharge tradeAllowanceCharge in this . Descriptor . GetTradeAllowanceCharges ( ) )
307
305
{
308
- foreach ( TradeAllowanceCharge tradeAllowanceCharge in this . Descriptor . GetTradeAllowanceCharges ( ) )
309
- {
310
- Writer . WriteStartElement ( "ram:SpecifiedTradeAllowanceCharge" ) ;
311
- Writer . WriteStartElement ( "ram:ChargeIndicator" , Profile . Comfort | Profile . Extended ) ;
312
- Writer . WriteElementString ( "udt:Indicator" , tradeAllowanceCharge . ChargeIndicator ? "true" : "false" ) ;
313
- Writer . WriteEndElement ( ) ; // !ram:ChargeIndicator
314
-
315
- if ( tradeAllowanceCharge . BasisAmount . HasValue )
316
- {
317
- Writer . WriteStartElement ( "ram:BasisAmount" , Profile . Extended ) ;
318
- Writer . WriteAttributeString ( "currencyID" , tradeAllowanceCharge . Currency . EnumToString ( ) ) ;
319
- Writer . WriteValue ( _formatDecimal ( tradeAllowanceCharge . BasisAmount . Value ) ) ;
320
- Writer . WriteEndElement ( ) ;
321
- }
306
+ Writer . WriteStartElement ( "ram:SpecifiedTradeAllowanceCharge" ) ;
307
+ Writer . WriteStartElement ( "ram:ChargeIndicator" , Profile . Comfort | Profile . Extended ) ;
308
+ Writer . WriteElementString ( "udt:Indicator" , tradeAllowanceCharge . ChargeIndicator ? "true" : "false" ) ;
309
+ Writer . WriteEndElement ( ) ; // !ram:ChargeIndicator
322
310
323
- Writer . WriteStartElement ( "ram:ActualAmount" , Profile . Comfort | Profile . Extended ) ;
311
+ if ( tradeAllowanceCharge . BasisAmount . HasValue )
312
+ {
313
+ Writer . WriteStartElement ( "ram:BasisAmount" , Profile . Extended ) ;
324
314
Writer . WriteAttributeString ( "currencyID" , tradeAllowanceCharge . Currency . EnumToString ( ) ) ;
325
- Writer . WriteValue ( _formatDecimal ( tradeAllowanceCharge . ActualAmount , 2 ) ) ;
315
+ Writer . WriteValue ( _formatDecimal ( tradeAllowanceCharge . BasisAmount . Value ) ) ;
326
316
Writer . WriteEndElement ( ) ;
317
+ }
327
318
319
+ Writer . WriteStartElement ( "ram:ActualAmount" , Profile . Comfort | Profile . Extended ) ;
320
+ Writer . WriteAttributeString ( "currencyID" , tradeAllowanceCharge . Currency . EnumToString ( ) ) ;
321
+ Writer . WriteValue ( _formatDecimal ( tradeAllowanceCharge . ActualAmount , 2 ) ) ;
322
+ Writer . WriteEndElement ( ) ;
328
323
329
- Writer . WriteOptionalElementString ( "ram:Reason" , tradeAllowanceCharge . Reason , Profile . Comfort | Profile . Extended ) ;
330
324
331
- if ( tradeAllowanceCharge . Tax != null )
332
- {
333
- Writer . WriteStartElement ( "ram:CategoryTradeTax" ) ;
334
- Writer . WriteElementString ( "ram:TypeCode" , tradeAllowanceCharge . Tax . TypeCode . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
335
- if ( tradeAllowanceCharge . Tax . CategoryCode . HasValue )
336
- Writer . WriteElementString ( "ram:CategoryCode " , tradeAllowanceCharge . Tax . CategoryCode ? . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
337
- Writer . WriteElementString ( "ram:ApplicablePercent" , _formatDecimal ( tradeAllowanceCharge . Tax . Percent ) , Profile . Comfort | Profile . Extended ) ;
338
- Writer . WriteEndElement ( ) ;
339
- }
325
+ Writer . WriteOptionalElementString ( "ram:Reason" , tradeAllowanceCharge . Reason , Profile . Comfort | Profile . Extended ) ;
326
+
327
+ if ( tradeAllowanceCharge . Tax != null )
328
+ {
329
+ Writer . WriteStartElement ( "ram:CategoryTradeTax" ) ;
330
+ Writer . WriteElementString ( "ram:TypeCode " , tradeAllowanceCharge . Tax . TypeCode . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
331
+ if ( tradeAllowanceCharge . Tax . CategoryCode . HasValue )
332
+ Writer . WriteElementString ( "ram:CategoryCode" , tradeAllowanceCharge . Tax . CategoryCode ? . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
333
+ Writer . WriteElementString ( "ram:ApplicablePercent" , _formatDecimal ( tradeAllowanceCharge . Tax . Percent ) , Profile . Comfort | Profile . Extended ) ;
340
334
Writer . WriteEndElement ( ) ;
341
335
}
336
+ Writer . WriteEndElement ( ) ;
342
337
}
343
338
344
- if ( ( this . Descriptor . ServiceCharges != null ) && ( this . Descriptor . ServiceCharges . Count > 0 ) )
339
+ foreach ( ServiceCharge serviceCharge in this . Descriptor . ServiceCharges )
345
340
{
346
- foreach ( ServiceCharge serviceCharge in this . Descriptor . ServiceCharges )
341
+ Writer . WriteStartElement ( "ram:SpecifiedLogisticsServiceCharge" ) ;
342
+ Writer . WriteOptionalElementString ( "ram:Description" , serviceCharge . Description , Profile . Comfort | Profile . Extended ) ;
343
+ Writer . WriteElementString ( "ram:AppliedAmount" , _formatDecimal ( serviceCharge . Amount ) , Profile . Comfort | Profile . Extended ) ;
344
+ if ( serviceCharge . Tax != null )
347
345
{
348
- Writer . WriteStartElement ( "ram:SpecifiedLogisticsServiceCharge" ) ;
349
- Writer . WriteOptionalElementString ( "ram:Description" , serviceCharge . Description , Profile . Comfort | Profile . Extended ) ;
350
- Writer . WriteElementString ( "ram:AppliedAmount" , _formatDecimal ( serviceCharge . Amount ) , Profile . Comfort | Profile . Extended ) ;
351
- if ( serviceCharge . Tax != null )
352
- {
353
- Writer . WriteStartElement ( "ram:AppliedTradeTax" ) ;
354
- Writer . WriteElementString ( "ram:TypeCode" , serviceCharge . Tax . TypeCode . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
355
- if ( serviceCharge . Tax . CategoryCode . HasValue )
356
- Writer . WriteElementString ( "ram:CategoryCode" , serviceCharge . Tax . CategoryCode ? . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
357
- Writer . WriteElementString ( "ram:ApplicablePercent" , _formatDecimal ( serviceCharge . Tax . Percent ) , Profile . Comfort | Profile . Extended ) ;
358
- Writer . WriteEndElement ( ) ;
359
- }
346
+ Writer . WriteStartElement ( "ram:AppliedTradeTax" ) ;
347
+ Writer . WriteElementString ( "ram:TypeCode" , serviceCharge . Tax . TypeCode . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
348
+ if ( serviceCharge . Tax . CategoryCode . HasValue )
349
+ Writer . WriteElementString ( "ram:CategoryCode" , serviceCharge . Tax . CategoryCode ? . EnumToString ( ) , Profile . Comfort | Profile . Extended ) ;
350
+ Writer . WriteElementString ( "ram:ApplicablePercent" , _formatDecimal ( serviceCharge . Tax . Percent ) , Profile . Comfort | Profile . Extended ) ;
360
351
Writer . WriteEndElement ( ) ;
361
352
}
353
+ Writer . WriteEndElement ( ) ;
362
354
}
363
355
364
356
if ( this . Descriptor . PaymentTerms != null )
0 commit comments