Codeunit "Sales Parafiscal Tax SLCAP"
Properties
| Name | Value |
|---|---|
| Access | Public |
| SingleInstance | True |
Methods
PreventAttachedLineModification
Cette fonction génère une erreur de modification d'une ligne de taxe parafiscale attachée.
procedure PreventAttachedLineModification(var SalesLine: Record "Sales Line")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
DeleteAttachedTaxes
Supprime les lignes de taxes parafiscales associées à la ligne spécifiée.
procedure DeleteAttachedTaxes(var SalesLine: Record "Sales Line")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
UpdateAttachedTaxes
Met à jour les lignes de taxes parafiscales attachées à la ligne de vente spécifiée.
procedure UpdateAttachedTaxes(var SalesLine: Record "Sales Line")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Remarks
Cette fonction est la jumelle de Populate pour les taxes Attached Line.
GetParafiscalTaxAmount
Obtient le montant total HT des taxes parafiscales pour la ligne de vente spécifiée.
procedure GetParafiscalTaxAmount(SalesLine: Record "Sales Line"): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
Returns
| Type | Description |
|---|---|
| Decimal |
Return value of type Boolean. |
GetParafiscalTaxAmountPerUnit
Obtient le prix unitaire total HT des taxes parafiscales pour la ligne de vente spécifiée.
procedure GetParafiscalTaxAmountPerUnit(SalesLine: Record "Sales Line"): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
Returns
| Type | Description |
|---|---|
| Decimal |
Return value of type Decimal. |
GetLineAmountExcludingAllTaxes
Obtient le montant total de la ligne hors toutes taxes (hors TVA et hors taxes parafiscales).
procedure GetLineAmountExcludingAllTaxes(SalesLine: Record "Sales Line"): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
Returns
| Type | Description |
|---|---|
| Decimal |
Return value of type Boolean. |
GetUnitPriceExcludingAllTaxes
Obtient le prix unitaire de la ligne hors toutes taxes (hors TVA et hors taxes parafiscales).
procedure GetUnitPriceExcludingAllTaxes(SalesLine: Record "Sales Line"): Decimal
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
Returns
| Type | Description |
|---|---|
| Decimal |
Return value of type Boolean. |
Populate
Obtient le détail des taxes parafiscales pour la ligne de vente spécifiée.
procedure Populate(SalesLine: Record "Sales Line", var ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
VAR Record "Parafiscal Tax Line Buffer SLCAP". |
PopulateWithOutstandingQuantity
Obtient le détail des taxes parafiscales pour la quantité ouverte de la ligne de vente spécifiée.
procedure PopulateWithOutstandingQuantity(SalesLine: Record "Sales Line", var ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
VAR Record "Parafiscal Tax Line Buffer SLCAP". |
PopulateWithQtyToInvoice
Obtient le détail des taxes parafiscales pour la quantité à facturer de la ligne de vente spécifiée.
procedure PopulateWithQtyToInvoice(SalesLine: Record "Sales Line", var ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
Record "Sales Line". |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
VAR Record "Parafiscal Tax Line Buffer SLCAP". |
RecalculateDocumentLines
Recalcule les montants hors toutes taxes sur les lignes du document.
procedure RecalculateDocumentLines(SalesHeader: Record "Sales Header")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesHeader | Record "Sales Header" |
Events
OnBeforeRecalculateDocumentLines
Se produit dans la fonction RecalculateDocumentLines avant que les montants hors toutes taxes des lignes du document ne soient recalculés. Vous pouvez utiliser cet événement pour effectuer des actions avant le recalcul des montants ou surcharger le recalcul.
[IntegrationEvent(False,False)]
local procedure OnBeforeRecalculateDocumentLines(SalesHeader: Record "Sales Header", var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesHeader | Record "Sales Header" | |
| Handled | Boolean |
OnAfterRecalculateDocumentLines
Se produit dans la fonction RecalculateDocumentLines après que les montants hors toutes taxes des lignes du document ont été recalculés.
[IntegrationEvent(False,False)]
local procedure OnAfterRecalculateDocumentLines(SalesHeader: Record "Sales Header")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesHeader | Record "Sales Header" |
OnBeforeModifyRecalculatedDocumentLine
Se produit dans la fonction RecalculateDocumentLines avant la modification d'une ligne de document recalculée.
[IntegrationEvent(False,False)]
local procedure OnBeforeModifyRecalculatedDocumentLine(SalesHeader: Record "Sales Header", var SalesLine: Record "Sales Line", var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesHeader | Record "Sales Header" | |
| SalesLine | Record "Sales Line" | |
| Handled | Boolean |
OnBeforeGetCalculationBasisForSalesLine
Se produit dans la fonction GetCalculationBasis avant de calculer la base de calcul et la quantité pour une ligne de vente. Utilisez typiquement cette fonction pour surcharger le calcul de la base de calcul et de la quantité pour une configuration existante.
[IntegrationEvent(False,False)]
local procedure OnBeforeGetCalculationBasisForSalesLine(SalesLine: Record "Sales Line", QtyFieldNo: Integer, CalculationBasis: Enum "Calculation Base SLCAP", var BaseValue: Decimal, var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| QtyFieldNo | Integer | |
| CalculationBasis | Enum CapVision.Finance.ParafiscalTaxes."Calculation Base SLCAP" | |
| BaseValue | Decimal | |
| Handled | Boolean |
OnGetCalculationBasisGetFactorForSalesLine
Se produit dans la fonction GetCalculationBasis pour un champ de quantité non supporté. Par défaut, seules les quantités, quantités expédiées ou quantités facturées peuvent être la base de calcul. Si vous avez besoin d'une autre base de calcul pour la quantité, vous pouvez utiliser cet événement pour la définir.
[IntegrationEvent(False,False)]
local procedure OnGetCalculationBasisGetFactorForSalesLine(SalesLine: Record "Sales Line", QtyFieldNo: Integer, var Factor: Decimal, var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| QtyFieldNo | Integer | |
| Factor | Decimal | |
| Handled | Boolean |
Examples
Par exemple, si vous basez le calcul sur le changement de la quantité réservée, spécifiez le code ci-dessous dans l'événement :
begin
if SalesLine.Quantity = 0 then
Factor := 1
else
Factor := SalesLine."Reserved Quantity" / SalesLine.Quantity;
if not SalesLine.IsCreditDocType() then
Factor := -Factor;
end;
OnGetCalculationBasisGetQuantityForSalesLine
Se produit dans la fonction GetCalculationBasis quand la base de calcul n'est pas supportée par défaut l'application. Utilisez typiquement cet événement si vous avez définit une nouvelle valeur dans l'énumération Calculation Base SLCAP.
[IntegrationEvent(False,False)]
local procedure OnGetCalculationBasisGetQuantityForSalesLine(SalesLine: Record "Sales Line", CalculationBasis: Enum "Calculation Base SLCAP", Quantity: Decimal, var BaseValue: Decimal, var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| CalculationBasis | Enum CapVision.Finance.ParafiscalTaxes."Calculation Base SLCAP" | |
| Quantity | Decimal | |
| BaseValue | Decimal | |
| Handled | Boolean |
Examples
Par exemple si votre base de calcul est basé sur un champ spécifique nommé "Alcohol Degree PTE", spécifiez le code ci-dessous dans l'événement :
BaseValue := Quantity * SalesLine."Alcohol Degree PTE";
OnBeforeInsertParafiscalTaxEntry
Se produit à la validation d'un document de vente, avant l'insertion d'une écriture de taxe parafiscale.
[IntegrationEvent(False,False)]
internal procedure OnBeforeInsertParafiscalTaxEntry(var ParafiscalTaxEntry: Record "Parafiscal Tax Entry SLCAP", SalesLine: Record "Sales Line", ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| ParafiscalTaxEntry | Table CapVision.Finance.ParafiscalTaxes.History."Parafiscal Tax Entry SLCAP" | |
| SalesLine | Record "Sales Line" | |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
OnBeforeGetParafiscalTaxAmountCalcsums
Se produit dans la fonction GetParafiscalTaxAmount, avant que la somme des montants des taxes parafiscales ne soit calculée (ParafiscalTaxLineBuffer.CalcSums("Total Amount Excl. VAT");). Utilisez cet événement pour effectuer des actions avant le calcul des montants, comme par exemple ajouter/supprimer des enregistrements dans la table ParafiscalTaxLineBuffer ou modifiez les montants calculés.
[IntegrationEvent(False,False)]
local procedure OnBeforeGetParafiscalTaxAmountCalcsums(SalesLine: Record "Sales Line", var ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
OnBeforePopulate
Se produit dans la fonction Populate chargée de remplir la table ParafiscalTaxLineBuffer pour chaque taxe parafiscale d'une ligne de vente. Vous pouvez utiliser cette fonction pour filtrer les taxes parafiscales à prendre en compte ou pour ajouter vos propres enregistrements.
[IntegrationEvent(False,False)]
local procedure OnBeforePopulate(SalesLine: Record "Sales Line", QtyFieldNo: Integer, var PostingDate: Date, var ItemParafiscalTax: Record "Item Parafiscal Tax SLCAP", var ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| QtyFieldNo | Integer | |
| PostingDate | Date | |
| ItemParafiscalTax | Table CapVision.Finance.ParafiscalTaxes."Item Parafiscal Tax SLCAP" | |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
OnAfterPopulate
Se produit dans la fonction Populate après que la table ParafiscalTaxLineBuffer a été remplie pour chaque taxe parafiscale d'une ligne de vente.
[IntegrationEvent(False,False)]
local procedure OnAfterPopulate(SalesLine: Record "Sales Line", QtyFieldNo: Integer, PostingDate: Date, var ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| QtyFieldNo | Integer | |
| PostingDate | Date | |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
OnBeforePreventAttachedLineModification
Se produit lorsque avant d'empêcher la modification d'une ligne de taxe parafiscale attachée.
[IntegrationEvent(False,False)]
local procedure OnBeforePreventAttachedLineModification(SalesLine: Record "Sales Line", var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| Handled | Boolean |
OnBeforeUpdateAttachedTaxes
[IntegrationEvent(False,False)]
local procedure OnBeforeUpdateAttachedTaxes(SalesLine: Record "Sales Line", var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| Handled | Boolean |
OnAfterUpdateAttachedTaxes
[IntegrationEvent(False,False)]
local procedure OnAfterUpdateAttachedTaxes(SalesLine: Record "Sales Line")
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" |
OnAfterLineDiscountPercentRecalculated
Se produit lorsque l'événement OnAfterUpdateLineDiscPct se produit sur une ligne de vente. Le pourcentage de remise est recalculé sur la part remisable des taxes parafiscales.
[IntegrationEvent(False,False)]
internal procedure OnAfterLineDiscountPercentRecalculated(var SalesLine: Record "Sales Line", DiscountableUnitPriceExcludingAllTaxes: Decimal, var LineDiscountPct: Decimal, var Handled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| DiscountableUnitPriceExcludingAllTaxes | Decimal | |
| LineDiscountPct | Decimal | |
| Handled | Boolean |
OnBeforeApplyExemption
Se produit avant l'évaluation de l'application de l'exonération de taxe parafiscale sur une ligne de vente.
[IntegrationEvent(False,False)]
local procedure OnBeforeApplyExemption(var SalesLine: Record "Sales Line", ParafiscalTax: Record "Parafiscal Tax SLCAP", var ApplyExemption: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| ParafiscalTax | Table CapVision.Finance.ParafiscalTaxes."Parafiscal Tax SLCAP" | |
| ApplyExemption | Boolean |
OnBeforeInsertAttachedTax
Se produit avant l'insertion d'une ligne de taxe parafiscale attachée à une ligne de vente.
[IntegrationEvent(False,False)]
local procedure OnBeforeInsertAttachedTax(var TaxSalesLine: Record "Sales Line", ParafiscalTax: Record "Parafiscal Tax SLCAP", ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary)
Parameters
| Name | Type | Description |
|---|---|---|
| TaxSalesLine | Record "Sales Line" | |
| ParafiscalTax | Table CapVision.Finance.ParafiscalTaxes."Parafiscal Tax SLCAP" | |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" |
OnBeforeModifyAttachedTax
Se produit avant la modification d'une ligne de taxe parafiscale attachée à une ligne de vente.
[IntegrationEvent(False,False)]
local procedure OnBeforeModifyAttachedTax(var TaxSalesLine: Record "Sales Line", ParafiscalTax: Record "Parafiscal Tax SLCAP", ParafiscalTaxLineBuffer: Record "Parafisc.Tax Line Buffer SLCAP" temporary, var HasChanged: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| TaxSalesLine | Record "Sales Line" | |
| ParafiscalTax | Table CapVision.Finance.ParafiscalTaxes."Parafiscal Tax SLCAP" | |
| ParafiscalTaxLineBuffer | Table CapVision.Finance.ParafiscalTaxes."Parafisc.Tax Line Buffer SLCAP" | |
| HasChanged | Boolean |
OnBeforeCalculateApplyExemption
Se produit avant la condition de calcul de l'exonération de taxe sur une ligne vente.
[IntegrationEvent(False,False)]
local procedure OnBeforeCalculateApplyExemption(ParafiscalTax: Record "Parafiscal Tax SLCAP", var SalesLine: Record "Sales Line")
Parameters
| Name | Type | Description |
|---|---|---|
| ParafiscalTax | Table CapVision.Finance.ParafiscalTaxes."Parafiscal Tax SLCAP" | |
| SalesLine | Record "Sales Line" |
OnBeforeSalesLineUpdateAmountsDone
Se produit lorsque l'événement OnAfterUpdateAmountsDone se produit sur une ligne de vente. Le prix unitaire hors toutes taxes est recalculé sur une ligne de vente.
[IntegrationEvent(False,False)]
internal procedure OnBeforeSalesLineUpdateAmountsDone(var SalesLine: Record "Sales Line", CurrentFieldNo: Integer, var IsHandled: Boolean)
Parameters
| Name | Type | Description |
|---|---|---|
| SalesLine | Record "Sales Line" | |
| CurrentFieldNo | Integer | |
| IsHandled | Boolean |