Class: ZATCA::UBL::CommonAggregateComponents::InvoiceLine
- Inherits:
-
BaseComponent
- Object
- BaseComponent
- ZATCA::UBL::CommonAggregateComponents::InvoiceLine
- Defined in:
- lib/zatca/ubl/common_aggregate_components/invoice_line.rb
Constant Summary
Constants inherited from BaseComponent
BaseComponent::ArrayOfBaseComponentOrNil
Instance Attribute Summary
Attributes inherited from BaseComponent
Instance Method Summary collapse
- #elements ⇒ Object
-
#initialize(invoiced_quantity:, invoiced_quantity_unit_code:, line_extension_amount:, tax_total:, item:, price:, allowance_charge: nil, currency_id: "SAR") ⇒ InvoiceLine
constructor
</cac:TaxTotal> <cac:Item> <cbc:Name>dsd</cbc:Name> <cac:ClassifiedTaxCategory> <cbc:ID>S</cbc:ID> <cbc:Percent>15.00</cbc:Percent> <cac:TaxScheme> <cbc:ID>VAT</cbc:ID> </cac:TaxScheme> </cac:ClassifiedTaxCategory> </cac:Item> <cac:Price> <cbc:PriceAmount currencyID=“SAR”>22.00</cbc:PriceAmount> <cac:AllowanceCharge> <cbc:ChargeIndicator>false</cbc:ChargeIndicator> <cbc:AllowanceChargeReason>discount</cbc:AllowanceChargeReason> <cbc:Amount currencyID=“SAR”>2.00</cbc:Amount> </cac:AllowanceCharge> </cac:Price> </cac:InvoiceLine>.
- #name ⇒ Object
Methods inherited from BaseComponent
#[], build, #build_xml, #dig, #find_nested_element_by_path, #generate_xml, #schema, #to_h, #to_xml
Constructor Details
#initialize(invoiced_quantity:, invoiced_quantity_unit_code:, line_extension_amount:, tax_total:, item:, price:, allowance_charge: nil, currency_id: "SAR") ⇒ InvoiceLine
</cac:TaxTotal> <cac:Item>
<cbc:Name>dsd</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>15.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item> <cac:Price>
<cbc:PriceAmount currencyID="SAR">22.00</cbc:PriceAmount>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>discount</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="SAR">2.00</cbc:Amount>
</cac:AllowanceCharge>
</cac:Price> </cac:InvoiceLine>
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/zatca/ubl/common_aggregate_components/invoice_line.rb', line 31 def initialize( invoiced_quantity:, invoiced_quantity_unit_code:, line_extension_amount:, tax_total:, item:, price:, allowance_charge: nil, currency_id: "SAR" ) super() @invoiced_quantity = invoiced_quantity @invoiced_quantity_unit_code = invoiced_quantity_unit_code @line_extension_amount = line_extension_amount @tax_total = tax_total @item = item @price = price @allowance_charge = allowance_charge @currency_id = currency_id end |
Instance Method Details
#elements ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/zatca/ubl/common_aggregate_components/invoice_line.rb', line 52 def elements [ ZATCA::UBL::BaseComponent.new(name: "cbc:ID", value: index), ZATCA::UBL::BaseComponent.new(name: "cbc:InvoicedQuantity", value: @invoiced_quantity, attributes: {unitCode: @invoiced_quantity_unit_code}), ZATCA::UBL::BaseComponent.new(name: "cbc:LineExtensionAmount", value: @line_extension_amount, attributes: {currencyID: @currency_id}), @tax_total, @item, @price, @allowance_charge ] end |
#name ⇒ Object
48 49 50 |
# File 'lib/zatca/ubl/common_aggregate_components/invoice_line.rb', line 48 def name "cac:InvoiceLine" end |