#[non_exhaustive]pub struct IcmsPartData {Show 21 fields
pub orig: String,
pub cst: String,
pub mod_bc: String,
pub v_bc: Cents,
pub p_red_bc: Option<Rate>,
pub p_icms: Rate,
pub v_icms: Cents,
pub mod_bc_st: String,
pub p_mva_st: Option<Rate>,
pub p_red_bc_st: Option<Rate>,
pub v_bc_st: Cents,
pub p_icms_st: Rate,
pub v_icms_st: Cents,
pub v_bc_fcp_st: Option<Cents>,
pub p_fcp_st: Option<Rate>,
pub v_fcp_st: Option<Cents>,
pub p_bc_op: Rate,
pub uf_st: String,
pub v_icms_deson: Option<Cents>,
pub mot_des_icms: Option<String>,
pub ind_deduz_deson: Option<String>,
}Expand description
Data for building the ICMSPart XML group (ICMS partition between states).
Used for interstate operations where the ICMS is split between origin and destination states.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.orig: StringProduct origin code (orig).
cst: StringICMS CST code.
mod_bc: StringBase calculation modality (modBC).
v_bc: CentsICMS calculation base value (vBC).
p_red_bc: Option<Rate>Base reduction rate (pRedBC). Optional.
p_icms: RateICMS rate (pICMS).
v_icms: CentsICMS value (vICMS).
mod_bc_st: StringST base calculation modality (modBCST).
p_mva_st: Option<Rate>ST added value margin (pMVAST). Optional.
p_red_bc_st: Option<Rate>ST base reduction rate (pRedBCST). Optional.
v_bc_st: CentsST calculation base value (vBCST).
p_icms_st: RateST rate (pICMSST).
v_icms_st: CentsST value (vICMSST).
v_bc_fcp_st: Option<Cents>FCP-ST calculation base (vBCFCPST). Optional.
p_fcp_st: Option<Rate>FCP-ST rate (pFCPST). Optional.
v_fcp_st: Option<Cents>FCP-ST value (vFCPST). Optional.
p_bc_op: RatePartition percentage applied at origin state (pBCOp).
uf_st: StringDestination state abbreviation for ST (UFST).
v_icms_deson: Option<Cents>Desonerated ICMS value (vICMSDeson). Optional.
mot_des_icms: Option<String>Reason code for ICMS desoneration (motDesICMS). Optional.
ind_deduz_deson: Option<String>Indicator whether desoneration is deducted (indDeduzDeson). Optional.
Implementations§
Source§impl IcmsPartData
impl IcmsPartData
Sourcepub fn new(
orig: impl Into<String>,
cst: impl Into<String>,
mod_bc: impl Into<String>,
v_bc: Cents,
p_icms: Rate,
v_icms: Cents,
mod_bc_st: impl Into<String>,
v_bc_st: Cents,
p_icms_st: Rate,
v_icms_st: Cents,
p_bc_op: Rate,
uf_st: impl Into<String>,
) -> Self
pub fn new( orig: impl Into<String>, cst: impl Into<String>, mod_bc: impl Into<String>, v_bc: Cents, p_icms: Rate, v_icms: Cents, mod_bc_st: impl Into<String>, v_bc_st: Cents, p_icms_st: Rate, v_icms_st: Cents, p_bc_op: Rate, uf_st: impl Into<String>, ) -> Self
Create a new IcmsPartData with all required fields.
Sourcepub fn p_red_bc_st(self, v: Rate) -> Self
pub fn p_red_bc_st(self, v: Rate) -> Self
Set the ST base reduction rate (pRedBCST).
Sourcepub fn v_bc_fcp_st(self, v: Cents) -> Self
pub fn v_bc_fcp_st(self, v: Cents) -> Self
Set the FCP-ST calculation base (vBCFCPST).
Sourcepub fn v_icms_deson(self, v: Cents) -> Self
pub fn v_icms_deson(self, v: Cents) -> Self
Set the desonerated ICMS value (vICMSDeson).
Sourcepub fn mot_des_icms(self, v: impl Into<String>) -> Self
pub fn mot_des_icms(self, v: impl Into<String>) -> Self
Set the ICMS desoneration reason code (motDesICMS).
Sourcepub fn ind_deduz_deson(self, v: impl Into<String>) -> Self
pub fn ind_deduz_deson(self, v: impl Into<String>) -> Self
Set the desoneration deduction indicator (indDeduzDeson).
Trait Implementations§
Source§impl Clone for IcmsPartData
impl Clone for IcmsPartData
Source§fn clone(&self) -> IcmsPartData
fn clone(&self) -> IcmsPartData
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more