Skip to main content

Workpaper

Struct Workpaper 

Source
pub struct Workpaper {
Show 35 fields pub workpaper_id: Uuid, pub workpaper_ref: String, pub engagement_id: Uuid, pub title: String, pub section: WorkpaperSection, pub objective: String, pub assertions_tested: Vec<Assertion>, pub procedure_performed: String, pub procedure_type: ProcedureType, pub scope: WorkpaperScope, pub population_size: u64, pub sample_size: u32, pub sampling_method: SamplingMethod, pub results_summary: String, pub exceptions_found: u32, pub exception_rate: f64, pub conclusion: WorkpaperConclusion, pub risk_level_addressed: RiskLevel, pub evidence_refs: Vec<Uuid>, pub cross_references: Vec<String>, pub account_ids: Vec<String>, pub preparer_id: String, pub preparer_name: String, pub preparer_date: NaiveDate, pub reviewer_id: Option<String>, pub reviewer_name: Option<String>, pub reviewer_date: Option<NaiveDate>, pub second_reviewer_id: Option<String>, pub second_reviewer_name: Option<String>, pub second_reviewer_date: Option<NaiveDate>, pub status: WorkpaperStatus, pub version: u32, pub review_notes: Vec<ReviewNote>, pub created_at: DateTime<Utc>, pub updated_at: DateTime<Utc>,
}
Expand description

Audit workpaper representing documented audit work.

Fields§

§workpaper_id: Uuid

Unique workpaper ID

§workpaper_ref: String

Workpaper reference (e.g., “A-100”, “B-200”)

§engagement_id: Uuid

Engagement ID this workpaper belongs to

§title: String

Workpaper title

§section: WorkpaperSection

Section/area of the audit

§objective: String

Audit objective addressed

§assertions_tested: Vec<Assertion>

Financial statement assertions tested

§procedure_performed: String

Procedure performed

§procedure_type: ProcedureType

Procedure type

§scope: WorkpaperScope

Testing scope

§population_size: u64

Population size (total items)

§sample_size: u32

Sample size (items tested)

§sampling_method: SamplingMethod

Sampling method used

§results_summary: String

Summary of results

§exceptions_found: u32

Number of exceptions found

§exception_rate: f64

Exception rate

§conclusion: WorkpaperConclusion

Conclusion reached

§risk_level_addressed: RiskLevel

Risk level addressed

§evidence_refs: Vec<Uuid>

Evidence reference IDs

§cross_references: Vec<String>

Cross-references to other workpapers

§account_ids: Vec<String>

Related account IDs

§preparer_id: String

Preparer user ID

§preparer_name: String

Preparer name

§preparer_date: NaiveDate

Date prepared

§reviewer_id: Option<String>

First reviewer ID

§reviewer_name: Option<String>

First reviewer name

§reviewer_date: Option<NaiveDate>

First review date

§second_reviewer_id: Option<String>

Second reviewer (manager) ID

§second_reviewer_name: Option<String>

Second reviewer name

§second_reviewer_date: Option<NaiveDate>

Second review date

§status: WorkpaperStatus

Workpaper status

§version: u32

Version number

§review_notes: Vec<ReviewNote>

Review notes

§created_at: DateTime<Utc>§updated_at: DateTime<Utc>

Implementations§

Source§

impl Workpaper

Source

pub fn new( engagement_id: Uuid, workpaper_ref: &str, title: &str, section: WorkpaperSection, ) -> Self

Create a new workpaper.

Source

pub fn with_objective(self, objective: &str, assertions: Vec<Assertion>) -> Self

Set the objective and assertions.

Source

pub fn with_procedure( self, procedure: &str, procedure_type: ProcedureType, ) -> Self

Set the procedure.

Source

pub fn with_scope( self, scope: WorkpaperScope, population: u64, sample: u32, method: SamplingMethod, ) -> Self

Set the scope and sampling.

Source

pub fn with_results( self, summary: &str, exceptions: u32, conclusion: WorkpaperConclusion, ) -> Self

Set the results.

Source

pub fn with_preparer(self, id: &str, name: &str, date: NaiveDate) -> Self

Set the preparer.

Source

pub fn add_first_review(&mut self, id: &str, name: &str, date: NaiveDate)

Add first reviewer sign-off.

Source

pub fn add_second_review(&mut self, id: &str, name: &str, date: NaiveDate)

Add second reviewer sign-off.

Source

pub fn add_review_note(&mut self, reviewer: &str, note: &str)

Add a review note.

Source

pub fn is_complete(&self) -> bool

Check if the workpaper is complete.

Source

pub fn all_notes_resolved(&self) -> bool

Check if all review notes are resolved.

Trait Implementations§

Source§

impl Clone for Workpaper

Source§

fn clone(&self) -> Workpaper

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Workpaper

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for Workpaper

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for Workpaper

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,