--- alias: user-guide-material-transfer-index description: "This documentation outlines the creation and usage of material transfer requests within a system" --- # Material Transfer :lock: MaterialTransfer.**Show** ## Overview A **Material Transfer** is an object that is used to make requests to and from a warehouse. It typically applies to consumable materials, but it can also apply to Parts. ![Material Transfer Process][materialTransferProcess] !!! info Warehouse Management is a Critical Manufacturing optional module. The system currently supports the following **MaterialTransfer** types: * **ForCostCenter** - to make a request for a **Material** for a **Cost Center** * **ForMAO** - to make a request to a Part for a **Maintenance Activity Order** * **ForMaterial** - to make a request for a particular **Material** based on a **BOM** * **ForReturn** - to return a Material to the Warehouse * **Refusal** - when a Material Transfer is refused There are four main **MaterialTransfer** Modes, defined at the **Product** Level, which are illustrated in the next picture. ![Material Transfer Modes][materialTransferModes] In addition, also at the **Product** level, there are two relevant **MaterialTransfer** properties: * **ApprovalMode** - which can be: * Automatic * Manual (by the manager of the requester Employee) * **PickupMode** - with four possible values: * Any: any person can pick it up * Requester: only the **Employee** that has requested it can pick it up * CostCenterEmployee: only an **Employee** of the same CostCenter can pick it up * AreaEmployee: only an **Employee** of the same **Area** can pick it up ## MaterialTransfer Lifecycle Every **MaterialTransfer** follows the life cycle depicted in the next figure: ```mermaid graph TD A1 ---->|Reject| A3[Rejected] A1 ---->|Cancel| A4[Canceled] A1[Requested] -->|Approve| A2[Approved] A2 -->|Prepare| A5[Ready] A5 -->|Send| A6[In Transport] A5 --->|Deliver| A7[Completed] A6 -->|Receive| A7[Completed] A2 -->|Send| A6 A2 -->|Cancel| A4[Canceled] A2 ---->|Deliver| A7[Completed] classDef mermaid_initial_state fill:#d7e4bd,stroke:#92d050,stroke-width:3px,color:#000; classDef mermaid_final_state fill:#a7e2f2,stroke:#65CDE8,stroke-width:3px,color:#000; class A1,A2,A5,A6,A8,A9,A10,A11,A12 mermaid_initial_state class A3,A4,A7 mermaid_final_state ``` ## Tying Everything Together ```mermaid graph LR L1[Material Transfer Material] --- Main[Material Transfer] Main --- A3[Product] Main ---|From| A4[Facility] Main ---|To| A4 Main -.-|From| A5[Area] Main -.-|To| A5 L1 --- A2 A6[Employee] --- Main subgraph "depending on Material Transfer Type" A1[Maintenance Activity Order] -.- Main A2[Material] -.- Main N1[Cost Center] -.- Main end classDef mermaid_title color:#000, fill:#fafafa, stroke:#fafafa, stroke-width:0x, font-size:100%, font-weight:200; classDef mermaid_start color:#000, fill:#fafafa, stroke:#fafafa, color:#fafafa, stroke-width:0x, font-size:100%, visibility: hidden; classDef mermaid_businessdata color:#000, fill:#65CDE8, stroke:#65CDE8, stroke-width:0px, font-size:100%; classDef mermaid_nonbusinessdata color:#000, fill:#B7DEE8, stroke:#B7DEE8, stroke-width:0px, font-size:100%; classDef mermaid_entity color:#000, fill:#FB9F53, stroke:#FB9F53, stroke-width:0px, font-size:100%; classDef mermaid_entitylinked color:#000, fill:#FCD5B5, stroke:#FCD5B5, stroke-width:0px, font-size:100%; classDef mermaid_context color:#000, fill:#B9CDE5, stroke:#B9CDE5, stroke-width:0px, font-size:100%; classDef mermaid_optional color:#000, fill:#B7DEE8, stroke:#65CDE8, stroke-width:1px, font-size:100%, stroke-dasharray: 5 5; class Main mermaid_entity class A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12 mermaid_businessdata class L1,L2,L3,L4,L5,L6 mermaid_entitylinked class C1,C2,C3,C4,C5,C6 mermaid_context class N1,N2,N3,N4,N5,N6 mermaid_nonbusinessdata click Main "../../business-data/material-transfer" click A1 "../../business-data/maintenance-activity-order" click A2 "../../business-data/material" click A3 "../../business-data/product" click A4 "../../business-data/facility" click A5 "../../business-data/area" click A6 "../../business-data/employee" ``` ## Sequence Of Steps The necessary steps for correctly creating and using a **MaterialTransfer** are: 1. Make sure that the customization mentioned above has been deployed to the Critical Manufacturing installation. 2. Define the different urgencies in the Generic Table *MaterialTransferUrgency*. 3. Create a **Product** and define the MaterialTransfer mode as being different from None. 4. Create Two **Facilities** with shipping enabled between them. 5. Create at least two **Steps** (one in each **Facility**) and mark them with *Material Transfer allowed*. 6. Create an **Employee** and, for manual approval, assign an Employee Manager to him/her 7. Depending on the **MaterialTransfer** type, it is necessary to create the following: * ForCostCenter: assign the current Employee to a Cost Center * ForMAO: create a **MaintenancePlan** with a **MaintenanceActivity** with Parts, and create a **Product** matching the Part name 8. Make one of the following request types: * ForCostCenter * ForMAO * ForMaterial * ForReturn [materialTransferProcess]: ../../images/material_transfer_process.png [materialTransferModes]: ../../images/material_transfer_mode.png {{ generate_index() }}