Anda di halaman 1dari 38

Oracle Work in Process Backflush Processing

Table of Contents
1. OVERVIEW.....................................................................................................................................................................................................................1 2. WHAT IS BACKFLUSHING?........................................................................................................................................................................................1 3. WHEN DO BACKFLUSH TRANSACTIONS OCCUR?..............................................................................................................................................1 4. PROCESS 1 : COMPLETE ASSEMBLIES AT OPERATION - MOVE TXN FORM.........................................................................................2 5. PROCESS 2 : MOVE & COMPLETE ASSEMBLIES INTO INV................................................................................................................................ . PROCESS 3 : COMPLETING ASSEMBLIES ! COMPLETION TRANSACTION FORM........................................................................................! ". PROCESS 4 : RECEIVE ASSEMBLIES FROM OSP OPETRATION : PURCHASING# ........................................................................................." $. PROCESS 5 : WORK ORDER%LESS COMPLETIONS WINDOW.. ............................................................................................................................# &. PROCESS : OPEN MOVE TRANSACTION INTERFACE : OVERVIEW.............................................................................................................1$

1'. PROCESS " : INVENTOR( TRANSACTION INTERFACE : OVERVIEW..........................................................................................................11 11. PROCESSING MODES : ONLINE AND BACKGROUND PROCESSING )INCLUDING INTERFACE PROCESSING IN DETAIL* .............11 12. BACKFLUSH PROCESSING )T(PES+ RULES+ GENERAL POINTS+ LOT & SERIAL BACKFLUSH+ RESOURCES+ MISC POINTS* .........2$ 13. HOW TO VIEW BACKFLUSH TRANSACTIONS..................................................................................................................................................2 14. HOW HAS BACKFLUSH FUNCTIONALIT( CHANGED OVER DIFFERENT APPLICATION RELEASES? .................................................2# 15. COMMON BACKFLUSH ISSUES AND HOW TO CORRECT THEM..................................................................................................................%1

1. OVERVIEW The objectives of this white paper are to consolidate and clarify information about backflushing and related issues. There is no existing document which collates all the relevant topics together. This white paper will aim to fulfill this need and discuss the following in detail : To explain what backflush transactions do To explain how backflushing works in Move and Completion transactions To explain the differences between nline processing and !ackground processing and relate these to backflush transactions To understand any differences in the behaviour of backflush transactions in different application releases. This will also discuss any key patches that are required. To explain what happens when backflush transactions fail and discuss how to correct them

". WHAT IS BACKFLUSHING? #n the !ills of Material module$ when a bill is created for any assembly$ sub%assembly or a finished good$ the component supply type for each component in the bill has to be defined. These supply types are push$ operation pull$ assembly pull$ !ulk$ &upplier and phantom. This !ills of material is used in 'ork in (rocess module for manufacturing the assembly)sub%assembly)finished good. #f the supply type of a component is (ush$ the components have to be manually issued to the shop floor for the manufacturing process. *ssembly (ull and peration (ull components are supplied in a different way. 'hen a particular operation or an assembly is completed during manufacturing$ ie during move transactions or completion transactions$ the system automatically !*C+,-.&/0& components from the supply subinventory and locator. 1o manual issuing of components is re2uired. The term 3backflushes4 in this case refers to the process of automatically 506.C#17 the component 2uantity from the subinventory%locator on hand 2uantity when any assembly or an operation is completed in the '#( module manufacturing process. *t the same time as reducing the inventory for the component$ the system will issue the component to the work order .

8. WHEN DO BACKFLUSH TRANSACTIONS OCCUR? !ackflush transactions 9pull9 components with peration (ull and *ssembly (ull supply types from inventory onto jobs and repetitive schedules. !ackflush transactions can be launched by the following six different processes : 1. Completing assemblies at operations using the Move Transactions

window ". Moving and completing assemblies into inventory using the Move Transactions window 8. Completing assemblies into inventory using the Completion Transactions window :. 5eceiving assemblies from an outside processing operation using the racle (urchasing$ 0nter 5eceipts window.

;. Move transactions imported through the pen Move Transaction #nterface can also create backflush transactions <. Transactions imported through the racle #nventory$ #nventory Transactions #nterface can also create backflush transactions. 0ach of the above six processes will be discussed in detail. #t is possible to reverse backflush transactions and automatically return backflushed components back to inventory. ,or example$ pull components that are backflushed as you move assemblies to the next intraoperation step in a routing are automatically returned to inventory if you move assemblies to a previous step in the routing or if you return completed assemblies back from inventory to the job. 'e will now discuss the different processes that lead to backflush transactions. 4. PROCESS 1 : COMPLETE ASSEMBLIES AT OPERATION MOVE TXN FORM 1avigation : 'ork in (rocess=Move Transactions=Move Transactions ,orm 1ame : '#(T>&,M 'hen move transactions are performed from the Move Transaction ,orm to COMP !T! assemblies at an operation" then operation pull backflush transactions automatically take place for all components with a supply type of #Operation Pull$ that are defined at that operation. This means that that the inventory for the components is pulled into that operation.

"

The assemblies are completed at the Transaction ,orm when :

(05*T# 1 stage in the Move

The move transaction type is M ?0 Moving assemblies from the @ueue or 5un intraoperation step of an operation to the To Move$ &crap or 5eject intraoperation steps of the same operation Moving assemblies from the @ueue or 5un intraoperation steps of an operation to the To Move$ &crap or 5eject intraoperation steps of a subse2uent operation perations by:

*ssemblies are not completed at

Moving assemblies between the To Move$ &crap$ and 5eject intraoperation steps of the same operation

Moving assemblies from the To Move$ &crap$ or 5eject intraoperation steps of the one operation to the @ueue or 5un intraoperation step of a subse2uent operation &o A what happens when an assembly is completed at the operation stage as aboveB %ackflush of components takes place &usin' 8

operation pull backflush transactions( and resources are char'ed. )ee the followin' sections for a detailed explanation * !ackflushing (rocess &section ++ * operation pull backflush transactions , see below( Charging of 5esources &section ++* see below(

5. PROCESS 2 : MOVE

COMPLETE ASSEMBLIES INTO INV

1avigation : 'ork in (rocess=Move Transactions=Move Transactions ,orm 1ame : '#(T>&,M !ackflush transactions also take place when an 3*&&0M!-C M ?0 C M(-0T# 1 T5*1&*CT# 14 takes place. This is a transaction performed from the Move Transaction ,orm. *ssembly move completion transactions M ?0 assemblies from the current operation to the To Move intraoperation step of the last operation then C M(-0T0 them into inventory. *ssemblies are completed into the default completion subinventory and locator specified for the discrete job or repetitive line)assembly.

The transaction type used for this is 3Complete4. 'hen completing assemblies$ information from the last operation of the job or schedule is automatically defaulted into the operation To fields % &e2uence$ Code$ and 6epartment % and the To Move intraoperation step is defaulted for the To &tep. The other inputs required are * -OM" quantity" date " .rom Operation )equence and .rom /ntraoperation )tep. &o A what happens when an assembly is completed into inventory as aboveB !ackflush of components takes place and resources are char'ed. )ee the followin' sections for a detailed explanation * %ackflushin' Process &section ++*see below( . /t should be noted that in this case T0O different types of backflush transaction take place. .irstly" when the assembly is moved to the #To Move$ step of the last operation , this initiates the backflush of any components with the supply type of #Operation Pull$ . Then when the assembly is completed into inventory" the backflush of all #1ssembly Pull$ components takes place. &see the backflush processin' section below(. Charging of 5esources Dsee belowE

FORM

!. PROCESS " : COMPLETING ASSEMBLIES - COMPLETION TXN 1avigation : 'ork in (rocess=Material Transactions=Completion T#$%&$'()*%& F*#+ N$+, : WIPTXCMP The next place where !ackflush Transactions originate from is the Completion Transaction ,orm. %ackflushin' takes place when you complete assemblies into inventory from the Completion Transaction .orm. The transaction type re2uired is 3'#( *ssembly Completion4

This form allows the user to specify the subinventory and locator into which the completed assemblies will be placed in inventory. These fields are defaulted from the wip parameters but can be overwritten. &o A what happens when an assembly is completed into inventory as aboveB !ackflush of components takes place and resources are charged. &ee the following sections for a detailed explanation : !ackflushing (rocess Dsection 11: see below( . /f you are completin' assemblies that have 1ssembly Pull components" the system pulls &backflushes( these components from the supply subinventory2locator assi'ned to the component requirement. &or uses system defaults for subiventory2locator( <

Char'in' of 3esources &see below(

-. PROCESS 4 : RECEIVE ASSEMBLIES FROM OSP OPERATION : PURCHASING !ackflush transactions are also initiated when assemblies are received from a supplier for an outside processing operation using the 0nter 5eceipts window. 1avigation : (urchasing &uper .ser= 5eceiving= 5eceipts ,orm 1ame : 3C43C!3C

The receipt of the assembly for the outside processing operation will only initiate a backflush transaction if the following conditions are met * The receipt transaction must be linked to an O)P resource. The O)P resource must have an autochar'e type of PO Move. The outside processing operation has components of supply type #Operation Pull$.

1ote the followin' points about the activities that are initiated by the receipt of the assemblies * )ince the autochar'e type for the O)P resource is PO Move" the system will automatically perform a Move Transaction to complete the assemblies at the O)P Operation. &by placin' a record in the Open Move Transaction table for processin'(. The move transaction completes the assemblies at the &( operation by moving assemblies from the @ueue or 5un intraoperation step of an operation to the To Move$ &crap or 5eject intraoperation steps of the same operation or a subse2uent operation. This will then trigger the backflush of the 3 peration (ull4 components defined for the &( peration. #f the &( peration is the last operation on the job$ then a completion transaction will also be automatically performed. This means that the assemblies would be completed into inventory. This therefore means that any 3*ssembly (ull4 components defined for the assembly would be backflushed at this stage.

,or more details of the actual !ackflush transactions$ see the section below on !ackflush (rocessing &section ++(.

.. PROCESS 5 : WORK ORDER-LESS COMPLETIONS WINDOW 1avigation : 'ork in (rocess= Material Transactions='ork completions ,orm 1ame : 0/PT5C.M rder%less

The following actions can be performed from this form A all these actions initiate backflushing of components : *ssemblies can be completed in this window without having the need for a job or a repetitive schedule. .sed to complete assemblies for ,low &chedules from ,low Manufacturing. .sed to complete assemblies for ,low &chedules which are created to replenish (roduction +anbans. -sed to complete scheduled and unscheduled assemblies

'hen assemblies are completed into inventory usin' this form" components are backflushed. 1ote the following about backflushin' when it ori'inates from 0ork order6less completions *

/n this case" &and only in this case( 6 the followin' supply types are backflushed * 1ssembly Pull Operation Pull P-)7 Phantom Components &the bills for phantoms are exploded and the phantoms then backflushed(

The supply types of %ulk and )upplier are 8OT backflushed. The backflush window displays for component information for supply type Push and for Pull components requirin' additional information" such as lot or serial number. 9ou can chan'e the transaction quantity when the 0ork in Process parameter" #1llow :uantity Chan'es ;urin' %ackflush$" is enabled.

/. PROCESS ! : OPEN MOVE TRANSACTION INTERFACE OVERVIEW 1ame of #nterface : pen Move Transaction #nterface

Table used : '#(IM ?0IT>1I#1T05,*C0 The pen Move Transansaction interface can be used to process Move and Complete Transactions and therefore initiate !ackflush Transactions. This topic will be discussed in detail in the 3!ackground (rocessing4 &ection later. 10. PROCESS - : INVENTOR1 TRANSACTION INTERFACE OVERVIEW 1ame of #nterface : #nventory Transaction #nterface Table used : MT-IT5*1&*CT# 1&I#1T05,*C0 The #nventory Transaction #nterface can be used to process Complete Transactions and therefore initiate !ackflush Transactions. This topic will be discussed in detail in the 3!ackground (rocessing4 &ection later.

1J

11. PROCESSING MODES 2 ONLINE AND BACKGROUND PROCESSING : 1ow that the different methods of initiating !ackflush transactions have been discussed" we need to consider the different processin' modes. There are two main processin' modes * %3)%, P#*',&&)%4 !ackground (rocessing

To enable nline or !ackground processing is dependent on setting certain profile options. The following profiles can be set to enable nline or !ackground (rocessing Dplease note : some of these profiles also enable concurrent processing % when you save a move transaction$ a concurrent process to process the material part of the move transaction is spawned and control is returned to you immediatelyE a. T(:#1? Transaction processing mode Dcan override the rest of the profile optionsE b. T(:'#( Completion Material (rocessing D,orm : Completion Transactions ,orm. Controls processing mode for M*T05#*transactions related to completion transactions from this formE c. T(:'#( Completion Transactions ,orm D,orm : Completion Transactions ,orm. Controls processing mode for completion transactions in this formE d. T(:'#( &hop ,loor Material (rocessing D,orm :Move Transactions ,orm. Controls processing mode for M*T05#*- transactions related to move transactions from this formE e.T(:'#( Move Transactions ,orm D,orm : Move Transactions ,orm. Controls processing mode for Move transactions in this formE f. T( : '#(: 'ork rder%less Completion ,orm D,orm : 'ork Completions ,orm. Controls processing mode for backflush transactions in this formE 11. 1 : ONLINE PROCESSING : The following points need to be noted about online processing : 'hen you save a completion transaction or move transaction$ it is processed while you wait and control is returned once transaction processing is completed. 11 rder%less

&erial controlled and lot K serial controlled components can 1-C be processed in 1-#10 mode. #f the lot selection method is manual$ a lot controlled component cannot be backflushed unless the processing mode is online. nline processing does not utilise the interfaces. The transactions are processed as you wait.

11. 2 : BACKGROUND PROCESSING : The following points need to be noted about background processing : 'hen you save a move or completion transaction$ control is returned to you immediately. These transactions are then processed on a periodic basis in the 3background4. !ackground processing of Move and Complete transactions utiliLes the interfaces Dopen move transaction interface and inventory transaction interfaceE. #f Move and Completion Transactions are performed from the Move Transactions 'indow and the processing mode is 3!ackground4 A the '#(IM ?0IT5*1&*CT# 1I#1T05,*C0 Dalso called open move transaction interfaceE is used to periodically process the transactions. The records are inserted into this interface and then processed by a program which picks up the records from the interface Dsee the section belowE #f Completion Transactions are performed from the Completion Transactions 'indow and the processing mode is 3!ackground4 A the MT-IT5*1&*CT# 1&I#1T05,*C0 &also called inventory transaction interface( is used to periodically process the transactions. The records are inserted into this interface and then processed by a program which picks up the records from the interface Dsee the section belowE. #f Completion Transactions are performed from the 'ork rder% less Completions 'indow and the processing mode is 3!ackground4 A the MT-IT5*1&*CT# 1&I#1T05,*C0 is used to periodically process the transactions. The records are inserted into this interface and then processed by a program which picks up the records from the interface Dsee the section belowE The MT-IT5*1&*CT# 1&I#1T05,*C0 and '#(IM ?0IT5*1&*CT# 1I#1T05,*C0 are also populated directly Di.e A not just from the formsE. #n this case$ scripts are 1"

used to populate the interfaces or the interfaces are populated automatically from other systems. 'henever an interface is used to process a transaction$ the processing mode is automatically background irrespective of any of the settings of the profile options above. This means that the transaction will be processed periodically by the use of a program Dtransaction worker or managerE. Therefore$ it is important to ensure that all criteria re2uired for background processing are met A see next two pointsE. &erial controlled and lot K serial controlled components cannot be backflushed using background processing. *n error will occur which will be discussed in the issues section below. #f the lot selection method is manual$ a lot controlled component cannot be backflushed in background mode.

11." : BACKGROUND PROCESSING : OPEN MOVE TRANSACTION INTERFACE 1ame of #nterface : pen Move Transaction #nterface

Table used : '#(IM ?0IT>1I#1T05,*C0 This interface is used in the following ways : (opulated directly to process move and complete transactions. #t is populated using scripts or populated from other systems. Move transaction records are automatically inserted into the pen Move transaction #nterface when receipts that involve ( Move resources are entered in racle (urchasing. (opulated when Move and Complete transactions are initiated by the Move Transaction ,orm *16 the transaction processing mode is !ackground Ddue to the settings of the profile optionsE

The '#(IM ?0IT>1I#1T05,*C0 is the pen Move #nterface table Dor 'ip Move Transaction interface or 'MT#E. #t contains information about the shop floor Move transactions that need to be processed. 0ach row contains the transaction date$ the job or repetitive schedule in which you are moving assemblies$ the primary unit of measure$ the actual unit of measure$ transaction 2uantities$ the foreign keys necessary for '#( to process the Move transaction as well as information about the ,rom and To operation se2uence numbers$ operation codes$ and intraoperation steps. This table supports all shop floor Move transactions including transactions loaded from other 18

systems$ such as bar code readers$ factory floor machines De.g cell controllersE and other manufacturing execution and 2uality control systems. The following concurrent program processes the records in the 0/P<MO4!<T58</8T!3.1C! table * *lso known as : 'ip Move Transaction Manager #nternal 1ame : '#CTM& The pen Move Transaction #nterface allows you to perform the following types of transaction : Move assemblies between operations and intraoperation steps DTransaction Type M 1 : Move. This is the value of the TransactionItype field in the '#(IM ?0IT>1I#1T05,*C0 table to designate the type of transaction E Move assemblies from an operation and complete them into inventory with a single transaction DTransaction Type M " : Move and CompleteE vercomplete a 2uantity greater then the job or schedule if over% completions are available. &crap assemblies 5eturn assemblies. DTransaction Type M 8 : 5eturnE

The following diagram explains the functionality of the Transaction #nterface :

pen Move

1:

&ome points to note from the above dia'ram * The wip move transaction mana'er" durin' the backflush setup sta'e" inserts records for backflush components into the MTTT &MT <M1T!3/1 <T318)1CT/O8)<T!MP ( table after validations have passed successfully. This is the Pendin' Transactions table for material transactions. The MMTT table is the 'ateway for all inventory transactions. 6ata for completion transactions is also stored in the MMTT table 1;

&uccessfully processed material transactions for backflush components and for completed assemblies are held in the MMT &MT <M1T!3/1 <T318)1CT/O8)( table. This is the parent table for MMTT. Transactions are processed into the MMT table from the MMTT table by the transaction processor which updates all the other relevant tables also. &uccessfully processed Move Transactions are stored in the '#(IM ?0IT5*1&*CT# 1& table. Costing data for the resource$ move transaction and overheads is moved to the '#(IC &TIT>1I#1T05,*C0 table ready to be processed by the Cost Manager. 1ny processin' errors for the Open Move Transaction /nterface are held in 0/P<T58</8T!3.1C!<!33O3).

The column (5 C0&&I(/*&0 in '#(IM ?0IT>1I#1T05,*C0 describes the current processing phase of the transaction. The Move Transaction 'orker processes each transaction row through the following three phases. Cou should always load 1 DMove ?alidationE. The options are: Move ?alidation Dprocess phase 1E : The Move worker validates the records with a process phase of 1 and a process status of 1 or " D(ending)5unningE. ,ailed records will error and process phase will remain at 1. ?alidated records will be set to process phase of " Dmove processingE. Move (rocessing : The Move worker picks up the records with a process phase of " and a process status of 1 or " D(ending)5unningE. ,ailed records will error and process phase will remain at ". &uccessful records are set to process phase of 8 Dbackflush setupE and are moved to the '#(IM ?0IT5*1&*CT# 1& table because the move transaction itself is processed. Operation %ackflush )etup * The Move worker picks up the records with a process phase of = and a process status of + or > &Pendin'23unnin'(. /f processin' is successful" the correspondin' record is deleted from the 0/P<MO4!<T58</8T!3.1C!. /f the record fails" the status will be set to error and the process phase will remain at =. #f there is a failure in the !ackflush setup phase$ there will be a 1<

record in error in '#(IM ?0IT>1I#1T05,*C0 and a corresponding record in '#(IM ?0IT5*1&*CT# 1&. 5easons !ackflush setup phase could error: 1. !ackflush is trying to drive inventory negative$ but negative balances are not allowed ". There are lot%controlled components$ but lot selection method is manual. 8. -ot selection method is not manual$ but the lot couldn9t be derived because of insufficient lot 2uantity. :. There are serial controlled components to be backflushed and serial numbers cannot be assigned. The column (5 C0&&I&T*T.& contains the state of the transaction. Cou should always load 1 D(endingE: (ending 5unning 0rror

&o when is backflushing initiatedB 'hen the Move Transaction Manager processes the following records from the '#(IM ?0IT>1I#1T05,*C0 table$ backflushing is initiated : The processed move transaction in '#(IM ?0IT>1I#1T05,*C0 completes the assemblies at an operation by moving assemblies from the @ueue or 5un intraoperation step of an operation to the To Move$ &crap or 5eject intraoperation steps of the same operation or a subse2uent operation. This will then trigger the backflush of the 3 peration (ull4 components defined for the peration. 'hen an assembly is completed into inventory for a completion transaction. This will trigger the backflush of the 3*ssembly (ull4 components for the assembly.

11.4 : BACKGROUND PROCESSING : INVENTOR1 TRANSACTION INTERFACE 1ame of #nterface : #nventory Transaction #nterface Table used : MT-IT5*1&*CT# 1&I#1T05,*C0 DMT#E

1F

The #nventory Transaction #nterface can be used to process Complete Transactions and therefore initiate !ackflush Transactions. This interface is used in the following ways : (opulated directly to process completion transactions. #t is populated using scripts or populated from other systems. (opulated when Completion transactions are initiated by the Completion Transactions ,orm *16 the transaction processing mode is !ackground Ddue to the settings of the profile optionsE (opulated when Completion transactions are initiated by the 'ork rder%less Completions ,orm *16 the transaction processing mode is !ackground Ddue to the settings of the profile optionsE

The appropriate transactions are loaded into the MT# table from various sources or by usin' loadin' scripts. These are then processed by a concurrent pro'ram. The pro'ram which processes the transactions from the interface table is called the /nventory Transaction 0orker. The internal name of the pro'ram * #1CTC'. The #nventory Transaction #nterface processes several transaction types. The type which initiates the backflush of components is : '#( completion transactions : these update the job or repetitive schedule completed 2uantities$ launch appropriate backflush transactions$ and relieve costs of completed assembly from the job)schedule

The above transaction completes assemblies into inventory. This therefore initiates the 3*ssembly (ull4 backflush. Components with a supply type of 3*ssembly (ull4 will be backflushed. The transaction type DtransactionItypeIid column in MT# tableE for wip assembly completion is ::.

1G

12. BACKFLUSHING PROCESSING !ackflush transactions 9pull9 components with peration (ull and *ssembly (ull supply types from inventory onto jobs and repetitive schedules. There are two types of %ackflush Transaction * peration (ull !ackflush Transactions *ssembly (ull !ackflush Transactions

12.1 : OPERATION PULL BACKFLUSH TRANSACTIONS #f there are peration (ull components at the operation *16 the operation is defined as a backflush operation$ the components are automatically pulled DbackflushedE from inventory. *ny components for non%backflush operations between the current operation and the last completed backflush operation are also pulled. Components for non%backflush operations are only pulled at the appropriate backflush operation. The last operation in the routing should always be defined as a backflush operation to ensure that all peration (ull components are backflushed by the end of the routing. #f you have the T(:'#(:Move Transaction profile option set to nline processing$ you cannot move more assemblies than exist in an operation step. #f this option is set to !ackground processing$ however$ you can move any number of assemblies$ but the 2uantity is validated in the background. The system automatically backflushes pull components 1 T under lot or serial number control or lotKserial control. (ull components under lot control can also be automatically backflushed if the 'ork in (rocess parameter 3-ot &election Method4 is set to one of the automatic methods$ and there is sufficient inventory. 12.2: ASSEMBL1 PULL BACKFLUSH TRANSACTIONS : 'hen you complete an assembly that has *ssembly (ull components$ these components are automatically pulled DbackflushedE from their assigned supply subinventories)locators. #f no supply subinventory)locator is assigned to the component" the system pulls components from the default supply subinventory2locator specified by the 0/P )upply )ubinventory and )upply ocator Parameters. #f the components being backflushed are under manual lot control$ 1H

serial control$ or lot and serial control$ you must enter lot and)or serial numbers. #f the job is tied to one or more sales orders$ the system automatically completes the assembly for those orders. 1ote: (urchasing transactions initiate backflushes only if they are tied to outside processing resources with an autocharge type of ( Move and only if re2uirements with a supply type of peration (ull exist at the outside processing operation. 12. " : BACKFLUSH TRANSACTION RULES The following transactions:

rules

are

enforced

when

performing

backflush

*n enabled default supply subinventory must be defined for the component. *lso$ a locator must be defined if re2uired by the subinventory. These will be used to supply the backflush components. &upply subinventories and locators can be defined at the item or bill of material component level. #f they are not defined$ the system uses the supply subinventory and locator specified by the '#( !ackflush &upply &ubinventory and -ocator (arameters when components are backflushed. 5outing references must be specified for non%standard discrete jobs. n the 6iscrete Nob=5outing tab$ select the routing 5eference when defining a non%standard job. 5outing references can be used to create routings Doperations and resource re2uirementsE for non%standard discrete jobs$ but are not re2uired. Cou can optionally define non%standard jobs without routings$ then customiLe them by adding only those operations that are re2uired. /owever$ the routing reference must exist for backflush transactions to occur. The component item must be defined as transactable. This refers to the inventory item parameter. The &ubinventory you you are backflushing from must be an asset subinventory if the O*llow 0xpense to *sset Transfer? profile option is set to 1o. !ackflush 2uantities in decimal values must be no more than five decimal places in order to create the backflush transaction. Cield calculations are based on exact re2uirements$ rather than rounded values. ,or component items under revision control$ the system always defaults the revision based on the item4s current "J

revision as of the date of the transaction. !ackflushing will therefore always issue the current revision of the component. To issue older revisions of a component would require chan'in' the supply type to #Push$. 12. 4 : GENERAL POINTS FOR ALL BACKFLUSH TRANSACTIONS : !ackflushing of components does 1 T take place if : 1. The operation that assemblies are being completed at is not a backflush operation ". The components are under serial number control and the processing mode is set to background. 8. The components are under lot control and the lot cannot be derived whilst the processing mode is set to background. :. The components are lot controlled and the 'ork in (rocess parameter -ot &election Method is set to Manual whilst the processing mode is background. ;. There is insufficient inventory in the supply subinventory 12.5 : LOT AND SERIAL NUMBER BACKFLUSHING : *ssembly and peration (ull components under lot$ serial$ or lot and serial number control can be backflushed usin' the backflush window. The %ackflush window provides efficient entry for lar'e numbers of lot and serial controlled items when creatin' assembly move transactions @includin' scrap" reject" and assembly completion. 'ork in (rocess parameters determine how lot numbers are assigned and verified during backflush transactions.

"1

The !ackflush 'indow appears when you perform a move$ scrap$ reject$ or assembly completion. The !ackflush window automatically appears only if you are backflushing lot or serial controlled pull components. #t is possible to reverse backflush transactions and automatically return backflushed components back to inventory. ,or example$ pull components that are backflushed as you move assemblies to the next intraoperation step in a routing are automatically returned to inventory if you move assemblies to a previous step in the routing. These are simply the opposite of backflush transactions. 12.! : COUNT POINT AND AUTOCHARGE OPERATIONS : 'hen you define operations in racle !ills of Material$ you can specify whether an operation is a count point and whether resources at that operation should be automatically charged during a move transaction. Cou can update this information in 'ork in (rocess using the perations window. perations that are non%count point)autocharge operations must be defined as backflush operations. #f you issue components with a supply type of peration pull to an assembly at a Count (oint off ) *utocharge off count point operation$ 'ork in (rocess backflushes these components when you move out of the Count (oint off ) *utocharge off count point operation into a count point operation that allows backflushing. 'ork in (rocess never pulls components with a supply type of *ssembly pull from Count (oint off) *utocharge off count point operations. /owever$ you must turn !ackflush on for Count (oint off ) *utocharge off count point operations. The !ackflush field should always be turned on for the last operation in a routing.

""

12.- : NEGATIVE RE5UIREMENT BACKFLUSHING : 'hen peration (ull components that have negative re2uirement 2uantities are backflushed$ they are returned to inventory Di.e they are 1 T supplied from inventory as for a normal backflushE. 12.. : REPETITIVE PRODUCTION LINE BACKFLUSHING : ,or repetitive manufacturing$ all backflush assemblies are automatically allocated to the correct repetitive schedule usin' a ./.O al'orithm. The al'orithm is based on a first unit start date" and on the assemblies moved or completed in the transaction that initiated the backflush. 12./ : CHARGING OF RESOURCES #f there are '#( Move resources at the operation that is being completed$ the system automatically charges these resources at their standard rate. #f there are Manual resources at the operation that is being completed$ the system notifies you that Manual resources exist at the operation so that you can manually charge them. 1". HOW DO 1OU VIEW BACKFLUSH TRANSACTIONS? The purpose of this section is to understand how to view backflush transactions using the applications and also to recogniLe which tables the transactions are stored in. !ackflush transactions from all sources can be seen from the ?iew Material Transactions form. The backflush transactions are held in the MMT table. Move transactions are held in 0/P<MO4!<T318)1CT/O8) table. Completion transactions are held in the MMT table.

the

The following se2uence of screenshots clarifies how to view backflush transactions : a. !efore we view the material transactions$ let4s have a look at the ! M that we will use in the examples. The next screen shows a ! M and shows that the components have a supply type of 3 peration (ull4.

"8

b. The next " screens shows the screen shots of " move transactions for the assembly. They are taken from '#(=Move Transactions=?iew Move Transactions. The purpose of the second screen is to highlight the move transaction ids. #t is important to note the following : There is one move transaction for : ,rom p "J @ueue= To p "J To Move. This completes the assemblies at this operation and will result in the backflush of components of operation pull at this operation Dcomponents pc and pbE There is one move transaction for : ,rom p 1J @ueue= To p "J @ueue. This assumes that operation 1J has been completed. Therefore any operation pull components at operation 1J will be backflushed. Dcomponent reE

":

c. The navigation for the form shown below is '#(=Material Transactions=?iew Material Transactions. The search criteria used were transaction type Dwip component issueE and job name. #t shows the backflush of the components initiated by the Move Transaction in bE above. The following screens will highlight this in more detail. They are from the same form. ";

d. The next screenshot is from the same form$ showing the reason$reference tab. The key thing to note is that the source code of 3'#( !ackflush4 indicates that the transaction was a backflush transaction. The 2uantity backflushed is also shown. The last column is the T5*1&*CT# 1I#6 which will be used later to 2uery the MT-IM*T05#*-IT5*1&*CT# 1& table.

e. The tab below shows the originating Move Transaction #d for the move transaction which resulted in the backflush of the components. #f the backflush was origininated by a completion transaction$ that would be shown in Completion transaction #d. "<

1ote that the two move transactions in step bE are both shown A compare the move transaction id with that in step b.

&o how would we 2uery the transactions above B f. To 2uery the move transactions : &elect P from '#(IM ?0IT5*1&*CT# 1& where transactionIid in D1FFJ1"H8$ 1FFJ1"H:E g. To 2uery the backflush transactions : 'e can use the following : &elect P from MT-IM*T05#*-IT5*1&*CT# 1& transactionIid in D1:F1:<;GE &elect P from MT-IM*T05#*-IT5*1&*CT# 1& moveItransactionIid in D1FFJ1"H8$ 1FFJ1"H:E &elect P from MT-IM*T05#*-IT5*1&*CT# 1& & .5C0IC 60 M 3'#( !ackflush4 where where where

"F

14. HOW HAS BACKFLUSH FUNCTIONALIT1 CHANGED OVER DIFFERENT APPLICATION RELEASES? The important thing to note is that !ackflush functionality has 1 T changed in release 1". #n fact$ the !ackflush functionality only changed in release 11.;.1J. 'e will now look at the functionality prior to 11.;.1J and how it changed in 11.;.1J. 11.5./ B,6$7)*8# : The way in which backflush transactions are processed from the pen Move Transaction #nterface Dalso known as 'ip Move Transaction #nterface or 'MT#E and the #nventory Transaction #nterface Dalso known as Material Transaction #nterface or MT#E is where the behaviour was slightly different in 11.;.H. 1. 'ip Move Transaction #nterface D'MT#E: move and complete through 'MT# : a. nce the record is populated in 'MT# for move and complete$ the move worker would process this transaction. b. Completion transactions are processed first and then the backflush transactions D(.-- componentsE c. #f completion is successful$ the job is completed. d. #f backflush fails for any reason$ the backflush components will remain in MMTT Dpending material transaction formE with error. The completion transaction has already gone through successfully by this time. ". MT#: completion through the Material Transaction #nterface or MT# : a. nce the record is populated in MT# for completion$ the inventory transaction worker will process this transaction. b. Completion transaction will be processed first and then backflush transactions D*&&0M!-C (.-- componentsE. c. #f completion is successful$ the job is completed. d. #f backflush fails for any reason$ the backflush will remain in MMTT Dpending material transaction formE with error. The completion transaction has already gone through successfully by this time. 11.5.10 B,6$7)*8# : The way in which backflush transactions are processed from the two open interfaces changed slightly in release 11.;.1J onwards. The functionality was changed in T' steps :

"G

S(,9 1 : B$&, 11.5.10 B,6$7)*8# 'MT# and MT#: ,or both the interfaces$ if backflush failed for any reason$ the completion was also prevented. S(,9 2: C8##,%( 11.5.10 B,6$7)*8# Customers complained about the initial 11.;.1J behaviour. Their concern was that the functionality stopped jobs from being completed and prevented goods leaving the factory. * patch was introduced to change this behaviour. The patch was :;J:G1J. The behaviour now is : 1. 'MT#: a. nce the record is populated in 'MT# for move and complete$ the move worker will process this transaction. b. The completion transaction will be processed first and then the backflush transactions D(.-- componentsE. c. #f completion is successful$ the job is completed. d. #f backflush fails for any reason$ 'MT# record is updated to process phase Q!ackflush setupQ and statusMQerrorQ. #t will also populate the reason why the backflush failed. e. The user then needs to resubmit the 'MT# record after correcting the error. *dvantantages of this functionality : ". MT#: The behaviour of MT# is exactly same as in base 11.;.1J i.e$ the completion fails if the backflush fails. I+9*#($%( 11.5.10 9$('6,& : There were some issues around backflush functionality after patch :;J:G1J was introduced. These were resolved by applying patch "H The 11.;.H functionality caused a lot of data corruption errors in MMTT because the data was not validated before loading the data in MMTT. The current functionality validates the data and explains the errors in the 'MT# table. The functionality forces you to correct the data before the data hits the MMTT table. These errors can then be corrected and the transaction can be resubmitted.

;J8GGG<.

ne of the key issues resolved by this patch was as follows :

#f backflush component fails inventory validation$ only the move records corresponding to those backflush components will fail. The other move records will go through. 15. COMMON BACKFLUSH ISSUES AND HOW TO CORRECT THEM : This section examines some of the common errors around backflush transactions and how to correct them. #t should be noted that this section 1-C looks at issues which are related to !ackflush transactions. #t does not look at all causes of (ending Move or complete transactions. There are documents which already cover these topics 1. P#*',&&)%4 &,#)$3 '*%(#*3 *# 3*( '*%(#*3 :$';<38&6 '*+9*%,%(& )% :$';4#*8%= +*=, : H*> )& (6, )&&8, &,,%? 7o to the (ending Move Transactions form. There will be a (ending Move Transaction that will be in error The transaction in '#(IM ?0IT>1I#1T05,*C0 will be in error in the 3!ackflush &etup4 (hase Dprocess phase 8E. There will be record in '#(IM ?0IT5*1&*CT# 1& for this record because the move transaction will have been processed. The error will be as below.

E##*# : *n *ssembly transaction cannot be processed in background mode if it has backflush components that are serial or lot controlled where the -ot cannot be derived. C$8&, : #f backflush components are under serial control or under lot but '#( cannot derive lot for some reason$ the system will throw an error Q*n *ssembly transaction cannot be processed in background mode if it has backflush components that are serial or lot controlled where the -ot cannot be derived.Q This is an unsupported feature$ and customers should not try to backflush serial control component in the background mode. S*38()*% : The solution is as follows : #f the lot selection wip parameter was set to manual and the item is lot controlled A then this transaction cannot be 8J

processed in background mode. Change the lot selection wip parameter to an appropriate value other then manual Dafter confirming this is not a business needE and then resubmit the transaction from the (ending Transaction ,orm : '#( = Move Transactions = (ending Move Transactions &elect the transaction and then choose the resubmit option. #f you need to use serial numbers or manual lot derivation$ then the following solution will need to be used : 1. 6elete the transaction from the (ending Transaction table. This is done as follows : '#( = Move Transactions = (ending Move Transactions Through the (ending Move Transactions window you can view$ update$ delete$ and resubmit Move transaction records that have failed validation and remain in the pen Move Transaction #nterface table D'#(IM ?0IT>1I#1T05,*C0E. #f the transaction cannot be deleted from the forms$ then use the script below with great caution and after careful validation : delete from '#(IM ?0IT>1I#1T05,*C0 where T5*1&*CT# 1I#6 M RerredItransactionS ". 1ow you need to perform the transaction 1-#10. This kind of transaction must 1 T be transacted in background mode Dwhere you need to enter serial number or where lot numbers are manually enteredE. To perform the transaction online$ do as follows : 1. Change the profile T(:'#( Move Transactions ,orm to 1-#10 ". 7o to '#(=Move Transactions=Move Transactions. (rocess the transaction online. 2. XXXXX: 58$%()(? +8&( :, 3,&& (6$% *# ,@8$3 (* A7$)3$:3, (* (#$%&$'( A>6,#, BBBB )& )(,+ %8+:,#C. H*> )& (6, )&&8, &,,%? The error message is seen in the Completion Transaction ,orm if the processing mode is 1-#10. #n this case$ both the completion transaction and the backflush transaction fail. 81

#f the processing mode is !*C+75 .16$ the issue is seen via a pending transaction in the interface D'#(IM ?0IT>1I#1T05,*C0 or M*T05#*-IT5*1&*CT# 1I#1T05,*C0E. #n this case$ the completion transaction completes and the backflush transaction fails.

E##*# : >>>>>: @uantity must be less than or e2ual to *vailable to transact Dwhere xxxx is item numberE. C$8&, : This is as a result of a valid inventory validation. There is not enough stock to allow the transaction to process. S*38()*% : The solution is as follows : 0nsure that there is enough stock to allow the transaction to proceed. #f the processing mode is online$ re%enter the transaction from forms. #f the processing mode is background$ then resubmit the transaction from the (ending Transactions window after the 2uantity issue has been resolved.

". B$';<38&6 T#$%&$'()*%& $#, 9,#<*#+,= ,7,% (6*846 (6, P#*<)3,: I%7: O7,##)=, N,4$()7, <*# B$';<38&6 )& &,( (* NO : H*> )& (6, )&&8, &,,%? The inventory is driven negative for some backflush components.

E##*# : 1o error message A the issue is seen by noticing that the inventory for some backflush components is negative. C$8&, : The inventory organiLation is flagged to allow negative balances. This overrides the profile : #nv: verride 1egative for !ackflush . S*38()*% : balances. &et the inventory organiLation to not allow negative

4. L*(& $#, %*( :,)%4 '*%&8+,= :$&,= *% FIFO A3*( ,B9)#$()*%C H*> )& (6, )&&8, &,,%? To see the consumed lots$ go to @ty= 'ip &ubinventory 8" #nventory= n /and

E##*# : 1otice that the system does not consume lots based on lot expiration. C$8&, : The standard functionality does not support ,#, based on expiration dates. backflush

S*38()*% : 1one. The standard functionality does not support ,#, backflush based on expiration dates. 5. T#$%&$'()*% 58$%()(? '$%%*( :, D,#* H*> )& (6, )&&8, &,,%? This issue is 1-C seen in releases !0- ' 11.;.1J * backflush record with Lero primary and transaction 2uantity is errored in MMTT. DMT-IM*T05#*-IT5*1&*CT# 1&IT0M((

E##*# : The record has the error : OTransaction @uantity cannot be LeroT. C$8&, : (rior to release 11.;.1J$ backflush transactions were not validated. This often led to corruption in the MMTT table. Therefore$ sometimes$ transactions with Lero 2uantities were not validated and then got stuck in MMTT. S*38()*% : a. 0nsure that enough 2uantity is available in a lot in the supply subinventory. b. -og a bug with the #nventory 6evelopment team to provide a datafix. The datafix will likely do the following : .pdate the transaction 2uantity and primary 2uantity in the stuck MMTT record with the correct 2uantity to be backflushed. #nsert records in MT-IT5*1&*CT# 1I- T&IT0M(& to match the transaction 2uantity. Caution : 6o not attempt to update the tables or delete records from tables without a detailed analysis by 6evelopment. !. APP-25105 : F$)3,= B$';<38&6 T#$%&$'()*%& H*> )& (6, )&&8, &,,%? 88

7o to 'ip Move Transactions form. (erform a completion transaction. The transaction fails with an *((%";1J; error.

E##*# : *((%";1J; : ,ailed backflush transaction exists for T5*1&*CT# 1I/0*605I#6 DxxxxxE C$8&, : The item was inactivated and could not transacted. S*38()*% : Change the item status to an active status. -. APP-25105 : 58$%()(? #,@8)#,= (* '*+93,(, (6)& (#$%&$'()*% )& %* 3*%4,# $7$)3$:3,. H*> )& (6, )&&8, &,,%? * completion transaction is stuck in the MMTT table. DMT-IM*T05#*-IT5*1&*CT# 1&IT0M((. The error could manifest in different ways A for this instance$ the completion transaction and any associated backflush transactions will not be able to be completed. The error is as follows :

E##*# : *((%";1J; : @uantity re2uired to complete this transaction is no longer available. C$8&, : ne cause of the issue could be as follows :

The component backflush was already completed at an earlier date)time. 'hen the pending transaction was re%processed$ the material was no longer available. There are various other causes however. 0ach needs to be examined as a separate case. S*38()*% : The solution is as follows: a. Check whether the record in MMTT is a backflush or a assembly related transaction Di.e completion transactionE. b. #f the stuck record in MMTT is a backflush$ you need to check whether the parent transaction is in MMT or not. c. #f the stuck records in MMTT is an assembly related transaction$ then you need to make sure no backflush records are in MMT. d. Then you need to log a bug against the #1? (roduct because the records are stuck in MMTT which is an #1? table. Cou will need to provide all the above details Dsteps a to cE. .. I%(,#+)((,%( W)9 M*7, E##*#& $( B$';<38&6 S,(89 &($4, 8:

H*> )& (6, )&&8, &,,%? 'hen this '#( !ackflush error occurs$ the discrete job remains in 5eleased &tatus at the last operation step and no material is issued to it. There is also an #nventory (ending transaction for the '#( Completion that gets stuck in the interface with status (ending.

E##*# : The '#( work order associated with this transaction is currently locked and being updated by another user. (lease wait for a few seconds and try again. Transaction processor error C$8&, : (ossible file corruption S*38()*% : 1. #dentify who locked the '#( or #1? table using the 2uery below : select 5*C-0I.&051*M0$ &I.&05I1*M0$ !N0CTI1*M0$lockedIm ode$sessionIid$c.serialU from allIobjects a $sys.?IV- C+06I !N0CT b$vVsession c where a. !N0CTI#6Mb.objectIid and c.sidMsessionIidS ". #nform the user who locked the tables to save their pending transaction or close the form if they don9t plan to save. 8. The final solution to this may re2uire the form to be regenerated after the above is done : .sing *dadmin utility ,rom Main Menu$ select Maintain *pplication ,iles 0nter <. 7enerate form files 6o you want to regenerate racle ,orms (-)&@- library files WCesX B Ces 6o you want to regenerate racle ,orms menu files WCesX B Ces 6o you want to regenerate racle ,orms executable files WCesX B Ces 0nter list of products D9all9 for all productsE WallX : all 7enerate specific forms objects for each selected product W1oX B 1o Make sure you enter the products in lowercase$ in example above$ enter 9all9 not 9*--9. /. R,'*#=& &(8'; )% MMTT >)(6 BFELOTEERROR H*> )& (6, )&&8, &,,%? This issue is 1-C seen in release 11.;.H and prior releases. #t is not seen in later releases. 8;

E##*# :

!,I- TI055 5

C$8&, : -ot could not be derived during operation pull due to insufficient onhand. S*38()*% : -og a bug against '#( and provide the output of the script wipIbfIlotIerror.s2l. This can be downloaded from the +nowledge base. 1J. M*7, T#$%&$'()*% #,3$(,= )&&8,&. These are not covered in this paper. #f there are (ending Move transactions which are stuck $ these will obviously also prevent any associated backflush transactions. (lease refer to the following note to assist with these issues : '#(IM ?0IT>1I#1T05,*C0 Common 0rrors #n (ending Move Transactions 'ith (ossible Causes *nd *ction (lan To (rocess Them D6oc #6 :;FJ<<.1E

8<

Anda mungkin juga menyukai