\documentclass[11pt,twoside]{article}\makeatletter

\IfFileExists{xcolor.sty}%
  {\RequirePackage{xcolor}}%
  {\RequirePackage{color}}
\usepackage{colortbl}
\usepackage{wrapfig}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \usepackage{xunicode}
  \catcode`⃥=\active \def⃥{\textbackslash}
  \catcode`❴=\active \def❴{\{}
  \catcode`❵=\active \def❵{\}}
  \def\textJapanese{\fontspec{Noto Sans CJK JP}}
  \def\textChinese{\fontspec{Noto Sans CJK SC}}
  \def\textKorean{\fontspec{Noto Sans CJK KR}}
  \setmonofont{DejaVu Sans Mono}
  
\else
  \IfFileExists{utf8x.def}%
   {\usepackage[utf8x]{inputenc}
      \PrerenderUnicode{–}
    }%
   {\usepackage[utf8]{inputenc}}
  \usepackage[english]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{float}
  \usepackage[]{ucs}
  \uc@dclc{8421}{default}{\textbackslash }
  \uc@dclc{10100}{default}{\{}
  \uc@dclc{10101}{default}{\}}
  \uc@dclc{8491}{default}{\AA{}}
  \uc@dclc{8239}{default}{\,}
  \uc@dclc{20154}{default}{ }
  \uc@dclc{10148}{default}{>}
  \def\textschwa{\rotatebox{-90}{e}}
  \def\textJapanese{}
  \def\textChinese{}
  \IfFileExists{tipa.sty}{\usepackage{tipa}}{}
\fi
\def\exampleFont{\ttfamily\small}
\DeclareTextSymbol{\textpi}{OML}{25}
\usepackage{relsize}
\RequirePackage{array}
\def\@testpach{\@chclass
 \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else
  \ifnum \@lastchclass=7 5 \else
   \ifnum \@lastchclass=8 \tw@ \else
    \ifnum \@lastchclass=9 \thr@@
   \else \z@
   \ifnum \@lastchclass = 10 \else
   \edef\@nextchar{\expandafter\string\@nextchar}%
   \@chnum
   \if \@nextchar c\z@ \else
    \if \@nextchar l\@ne \else
     \if \@nextchar r\tw@ \else
   \z@ \@chclass
   \if\@nextchar |\@ne \else
    \if \@nextchar !6 \else
     \if \@nextchar @7 \else
      \if \@nextchar (8 \else
       \if \@nextchar )9 \else
  10
  \@chnum
  \if \@nextchar m\thr@@\else
   \if \@nextchar p4 \else
    \if \@nextchar b5 \else
   \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi
   \fi \fi  \fi  \fi  \fi  \fi  \fi \fi \fi \fi \fi \fi}
\gdef\arraybackslash{\let\\=\@arraycr}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\def\abbr{}
\def\corr{}
\def\expan{}
\def\gap{}
\def\orig{}
\def\reg{}
\def\ref{}
\def\sic{}
\def\persName{}\def\name{}
\def\placeName{}
\def\orgName{}
\def\textcal#1{{\fontspec{Lucida Calligraphy}#1}}
\def\textgothic#1{{\fontspec{Lucida Blackletter}#1}}
\def\textlarge#1{{\large #1}}
\def\textoverbar#1{\ensuremath{\overline{#1}}}
\def\textquoted#1{‘#1’}
\def\textsmall#1{{\small #1}}
\def\textsubscript#1{\@textsubscript{\selectfont#1}}
\def\textxi{\ensuremath{\xi}}
\def\titlem{\itshape}
\newenvironment{biblfree}{}{\ifvmode\par\fi }
\newenvironment{bibl}{}{}
\newenvironment{byline}{\vskip6pt\itshape\fontsize{16pt}{18pt}\selectfont}{\par }
\newenvironment{citbibl}{}{\ifvmode\par\fi }
\newenvironment{docAuthor}{\ifvmode\vskip4pt\fontsize{16pt}{18pt}\selectfont\fi\itshape}{\ifvmode\par\fi }
\newenvironment{docDate}{}{\ifvmode\par\fi }
\newenvironment{docImprint}{\vskip 6pt}{\ifvmode\par\fi }
\newenvironment{docTitle}{\vskip6pt\bfseries\fontsize{22pt}{25pt}\selectfont}{\par }
\newenvironment{msHead}{\vskip 6pt}{\par}
\newenvironment{msItem}{\vskip 6pt}{\par}
\newenvironment{rubric}{}{}
\newenvironment{titlePart}{}{\par }

\newcolumntype{L}[1]{){\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{){\centering\arraybackslash}p{#1}}
\newcolumntype{R}[1]{){\raggedleft\arraybackslash}p{#1}}
\newcolumntype{P}[1]{){\arraybackslash}p{#1}}
\newcolumntype{B}[1]{){\arraybackslash}b{#1}}
\newcolumntype{M}[1]{){\arraybackslash}m{#1}}
\definecolor{label}{gray}{0.75}
\def\unusedattribute#1{\sout{\textcolor{label}{#1}}}
\DeclareRobustCommand*{\xref}{\hyper@normalise\xref@}
\def\xref@#1#2{\hyper@linkurl{#2}{#1}}
\begingroup
\catcode`\_=\active
\gdef_#1{\ensuremath{\sb{\mathrm{#1}}}}
\endgroup
\mathcode`\_=\string"8000
\catcode`\_=12\relax

\usepackage[a4paper,twoside,lmargin=1in,rmargin=1in,tmargin=1in,bmargin=1in,marginparwidth=0.75in]{geometry}
\usepackage{framed}

\definecolor{shadecolor}{gray}{0.95}
\usepackage{longtable}
\usepackage[normalem]{ulem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{marginnote}

\renewcommand{\@cite}[1]{#1}


\renewcommand*{\marginfont}{\itshape\footnotesize}

\def\Gin@extensions{.pdf,.png,.jpg,.mps,.tif}

  \pagestyle{fancy}

\usepackage[pdftitle={Development of Material Requirements Planning (MRP) Software with C Language},
 pdfauthor={}]{hyperref}
\hyperbaseurl{}

	 \paperwidth210mm
	 \paperheight297mm
              
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}
\clubpenalty=8000
\emergencystretch 3em
\hbadness=4000
\hyphenpenalty=400
\pretolerance=750
\tolerance=2000
\vbadness=4000
\widowpenalty=10000

\renewcommand\section{\@startsection {section}{1}{\z@}%
     {-1.75ex \@plus -0.5ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large\bfseries}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
     {-1.75ex\@plus -0.5ex \@minus- .2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
     {-1.5ex\@plus -0.35ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\large}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
     {-1ex \@plus-0.35ex \@minus -0.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\normalsize}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
     {1.5ex \@plus1ex \@minus .2ex}%
     {-1em}%
     {\reset@font\normalsize\bfseries}}


\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
 \@tempdima 1.5em \begingroup
 \parindent \z@ \rightskip \@pnumwidth 
 \parfillskip -\@pnumwidth 
 \bfseries \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
 \endgroup}
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\@ifundefined{c@section}{\newcounter{section}}{}
\@ifundefined{c@chapter}{\newcounter{chapter}}{}
\newif\if@mainmatter 
\@mainmattertrue
\def\chaptername{Chapter}
\def\frontmatter{%
  \pagenumbering{roman}
  \def\thechapter{\@roman\c@chapter}
  \def\theHchapter{\roman{chapter}}
  \def\thesection{\@roman\c@section}
  \def\theHsection{\roman{section}}
  \def\@chapapp{}%
}
\def\mainmatter{%
  \cleardoublepage
  \def\thechapter{\@arabic\c@chapter}
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \pagenumbering{arabic}
  \setcounter{secnumdepth}{6}
  \def\@chapapp{\chaptername}%
  \def\theHchapter{\arabic{chapter}}
  \def\thesection{\@arabic\c@section}
  \def\theHsection{\arabic{section}}
}
\def\backmatter{%
  \cleardoublepage
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \setcounter{secnumdepth}{2}
  \def\@chapapp{\appendixname}%
  \def\thechapter{\@Alph\c@chapter}
  \def\theHchapter{\Alph{chapter}}
  \appendix
}
\newenvironment{bibitemlist}[1]{%
   \list{\@biblabel{\@arabic\c@enumiv}}%
       {\settowidth\labelwidth{\@biblabel{#1}}%
        \leftmargin\labelwidth
        \advance\leftmargin\labelsep
        \@openbib@code
        \usecounter{enumiv}%
        \let\p@enumiv\@empty
        \renewcommand\theenumiv{\@arabic\c@enumiv}%
	}%
  \sloppy
  \clubpenalty4000
  \@clubpenalty \clubpenalty
  \widowpenalty4000%
  \sfcode`\.\@m}%
  {\def\@noitemerr
    {\@latex@warning{Empty `bibitemlist' environment}}%
    \endlist}

\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}}
\parskip0pt
\parindent1em
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\newenvironment{reflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemsep}{0pt}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\itshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{sansreflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\itemsep}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\upshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{specHead}[2]%
 {\vspace{20pt}\hrule\vspace{10pt}%
  \phantomsection\label{#1}\markright{#2}%

  \pdfbookmark[2]{#2}{#1}%
  \hspace{-0.75in}{\bfseries\fontsize{16pt}{18pt}\selectfont#2}%
  }{}
      \def\TheFullDate{2013-01-15 (revised: 15 January 2013)}
\def\TheID{\makeatother }
\def\TheDate{2013-01-15}
\title{Development of Material Requirements Planning (MRP) Software with C Language}
\author{}\makeatletter 
\makeatletter
\newcommand*{\cleartoleftpage}{%
  \clearpage
    \if@twoside
    \ifodd\c@page
      \hbox{}\newpage
      \if@twocolumn
        \hbox{}\newpage
      \fi
    \fi
  \fi
}
\makeatother
\makeatletter
\thispagestyle{empty}
\markright{\@title}\markboth{\@title}{\@author}
\renewcommand\small{\@setfontsize\small{9pt}{11pt}\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2\p@
\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
\def\@listi{\leftmargin\leftmargini
               \topsep 2\p@ plus1\p@ minus1\p@
               \parsep 2\p@ plus\p@ minus\p@
               \itemsep 1pt}
}
\makeatother
\fvset{frame=single,numberblanklines=false,xleftmargin=5mm,xrightmargin=5mm}
\fancyhf{} 
\setlength{\headheight}{14pt}
\fancyhead[LE]{\bfseries\leftmark} 
\fancyhead[RO]{\bfseries\rightmark} 
\fancyfoot[RO]{}
\fancyfoot[CO]{\thepage}
\fancyfoot[LO]{\TheID}
\fancyfoot[LE]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[RE]{\TheID}
\hypersetup{citebordercolor=0.75 0.75 0.75,linkbordercolor=0.75 0.75 0.75,urlbordercolor=0.75 0.75 0.75,bookmarksnumbered=true}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrulewidth}{0pt}}

\date{}
\usepackage{authblk}

\providecommand{\keywords}[1]
{
\footnotesize
  \textbf{\textit{Index terms---}} #1
}

\usepackage{graphicx,xcolor}
\definecolor{GJBlue}{HTML}{273B81}
\definecolor{GJLightBlue}{HTML}{0A9DD9}
\definecolor{GJMediumGrey}{HTML}{6D6E70}
\definecolor{GJLightGrey}{HTML}{929497} 

\renewenvironment{abstract}{%
   \setlength{\parindent}{0pt}\raggedright
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
   \textcolor{GJBlue}{\large\bfseries\abstractname\space}
}{%   
   \vskip8pt
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
}

\usepackage[absolute,overlay]{textpos}

\makeatother 
      \usepackage{lineno}
      \linenumbers
      
\begin{document}

             \author[1]{Md. Saiful  Islam}

             \author[2]{Ripon Kumar  Saha}

             \author[3]{Abu Md.  Saifuddoha}

             \affil[1]{  Khulna University of Engineering and Technology (KUET)}

\renewcommand\Authands{ and }

\date{\small \em Received: 15 December 2012 Accepted: 31 December 2012 Published: 15 January 2013}

\maketitle


\begin{abstract}
        


Now a day?s a number of manufacturing firms in developing countries do not practice affordable, efficient and user friendly inventory management tools which has been identified as a major cause of high inventory cost for adequate planning. This study focuses on the development of Material Requirements Planning (MRP) software with programming language C that can be used by the local industries for inventory management in a job shop manufacturing environment. An algorithm has been developed to understand the MRP processing logic. A manual method of calculation to solve MRP problem has also been shown. Evaluation tests of the software were carried out using various products ranging from those with simple structure of single product to complex structure. The software was shown to be user friendly and allow for easy data input and output to be saved and retrieved for future planning. The input process of the software has been shown step by step. The output of the program shows the time-phased requirements for assemblies, parts and raw materials as well as the missing deliveries and time required to meet the missing deliveries.

\end{abstract}


\keywords{MRP, MPS, BOM, lead time, lot-sizing, inventory, software, C language.}

\begin{textblock*}{18cm}(1cm,1cm) % {block width} (coords) 
\textcolor{GJBlue}{\LARGE Global Journals \LaTeX\ JournalKaleidoscope\texttrademark}
\end{textblock*}

\begin{textblock*}{18cm}(1.4cm,1.5cm) % {block width} (coords) 
\textcolor{GJBlue}{\footnotesize \\ Artificial Intelligence formulated this projection for compatibility purposes from the original article published at Global Journals. However, this technology is currently in beta. \emph{Therefore, kindly ignore odd layouts, missed formulae, text, tables, or figures.}}
\end{textblock*}


\let\tabcellsep& 	 	 		 
\section[{Introduction}]{Introduction}\par
aterials Requirements Planning (MRP) is a computer-based production planning and inventory control system which is concerned with both production scheduling and inventory control. It is a material control system that attempts to keep adequate inventory levels to assure that required materials are available when needed. The main purpose of MRP software is to facilitate the calculation of requirements of materials and timing.\par
Thus it is a technique for determining the quantity and timing for the acquisition of dependent demand items needed to satisfy master production schedule (MPS) requirements by converting three inputs, bill of material, inventory data and master production schedule into time-phased requirements for subassemblies, component parts and raw materials, working backward from the due date using lead times and other information to determine when and how much to order \hyperref[b0]{[1]}. The major objectives of an MRP system are to 1) ensure the availability of materials, components, and products for planned production and for customer Author ? ? ? ? : Undergraduate student, Department of Industrial Engineering \& Management (IEM), Khulna University of Engineering \& Technology (KUET), Khulna-9203, Bangladesh. E-mails : saifuliem@gmail.com, mahbub.iem@gmail.com, ripon\textunderscore kuet27@yahoo.com, saifsf08@gmail.com delivery 2) maintain the lowest possible level of inventory 3) plan manufacturing activities, delivery schedules, and purchasing activities \hyperref[b2]{[2]}.\par
Figure  {\ref 1} : Block diagram of MRP system Before 1960's there was no satisfactory method available for handling the inventory of dependent items. A firm's formal inventory system was often patterned after order points and either misapplied or broken down into a maze of informal method when it comes to handling dependent items. There was no feasible method of keeping accurate records of thousands of inventory items to keep them out of too much scheduling trouble. Unfortunately, these did not always achieve the intended objective, however they always made a contribution to the inventory carrying and storage costs. During the 1960's the computer opened the door to an inventory system that could keep up to date records on the status of all inventory in stock. This brought a better understanding of production operation and new ways of managing production. It also brought out some new terminology, such as priority in material requirement planning system and capacity planning. The American production and inventory control society (APICS) has done much to standardize the terminology in this field and material requirement planning is popularly abbreviated as MRP in the world over \hyperref[b3]{[3]}.\par
In to about 8,000 by 1981. In the 1980s, Joe Orlicky's MRP evolved into Oliver Wight's manufacturing resource planning (MRP II) which brings master scheduling, rough-cut capacity planning, capacity requirements planning, S\&OP in 1983 and other concepts to classical MRP. By 1989, about one third of the software industry was MRP II software sold to American industry (\$1.2 billion worth of software) \hyperref[b6]{[5]}.\par
MRP is the way of life for many industries fabricating and assembling products like automobiles and radios. It is generally applicable in situations of multiple items with complex bills of materials and is especially suited to manufacturing settings where the demands of many of the components and subassemblies depend on the demands of items that face external demands. MRP is also suitable when the manufacturing cycle is long for the finished product and lead time for components and raw materials are relatively long. While demands for end items are independent the demands for components used to manufacture end items depend on the demands of the end items. The distinctions between independent and dependent demands are important in classifying inventory items and in developing systems to manage items within each demand classification \hyperref[b7]{[6]}.\par
The Master Production Schedule (MPS) includes quantities of products to be produced at a given time period. Quantities are included both at aggregate and detailed levels. Aggregate may refer to monthly production and detailed may refer to weekly or daily production. The master production schedule takes the form of a table in which rows represent products and columns represent time components \hyperref[b8]{[7]}. The bill of materials (BOM) is a list of the raw materials, subassemblies, assemblies, parts and the quantities of each needed to manufacture an end product. Lead time is the time interval between ordering and receiving an item \hyperref[b9]{[8]}. Sometimes it means the assembly time or processing time to produce an item.\par
A key variable in MRP system design is the selection of lot-sizing rule (how much to order) based on the lead time. The problem of lot sizing is one of satisfying the requirements while trying to minimize holding and setup costs. There are basically two major classes of lot sizing techniques namely Static and Dynamic. A static lot-sizing rule orders the same quantity each time an order is placed and often generating higher average on hand inventory for extra safety stock \hyperref[b10]{[9]}. Dynamic decision rule changes the order quantity with each order such that each order is just large enough to prevent shortages over a specified time period by tying lot-size to gross requirements. It generally causes instability with lower-level components unable to respond sufficiently fast to changes in requirements \hyperref[b11]{[10]}  \hyperref[b12]{[11]}. The lot-for-lot (LFL) ordering is the simplest approach and it refers to order the net requirements for a specific period. The LFL approach minimizes the holding cost by producing just-in-time. In lot-size (LS) ordering the order size must be in multiples of the lot size. To form a useful bill of material it is convenient to order the items by levels. The level of an item is the maximum number of stages of assembly required to get the item into an end product. Consider a specific final item named 'A' for a manufacturing firm.  The required quantity of final item 'A' is 250 for the first order. The firm already has 100 units of final item in inventory. So the firm needs 150 units of 'A' to meet the first order. For 150 units of 'A' it requires 300 units of item 'B' and 600 units of item 'C'. Again, for 300 units of 'B' the firm needs 600 units of item 'D' and 300 units of item 'E'. The inventory level of item 'D' is 50. So, the net requirement of item 'D' is 550. If the firm orders today for 550 units of 'D' from supplier it can receive the order after two weeks. In the meantime the required quantity of item 'E' will be available for lower lead time. It will takes another one day to produce the required quantity of item 'B' with items 'D' and 'E'. In the meantime the required quantity of item 'C' will be available. Finally, it will take another two more days to produce the required quantity of final item 'A' with items 'B' and 'C'. It will take total five weeks to meet the first order. The first order can be delivered in the sixth week. -   {\ref ------------------------------------------} Step 1 : Structure has been used to declare the variables of each item (item ID, item name, inventory level, lead time, lot size, number of item needed for each upper item, upper item ID, Number of lower item etc). 
\section[{-----------------------------------------ID: 101}]{-----------------------------------------ID: 101}\par
Step 2 : Input the total number of level and information of each item (Bill of Materials).\par
Step 3 : Input the total number of deliveries and timing \& required quantity of final item for each delivery (Master Production Schedule).\par
Step 4 : Temporary inventory level variable is used to hold the inventory level of each item temporarily which will be destructed after calculation.\par
Step 5 : Finding out the order release date and temporary inventory level of independent item (final item) for each delivery\par
Step 6 : Finding out the order release date and temporary inventory level of all dependent items (sub items) for each delivery. If an item occurs more than once it will update the temporary inventory level for all repeated items simultaneously.\par
Step 7 : If the order release date of an item is negative it means that the Order Release falls before the planning period. So, the delivery can't be possible.\par
Step 8 : Then searching for the maximum negative value of order release date among all items for the deliveries which are not possible. This maximum negative value yields the number of weeks/days required to meet the missing deliveries.\par
Step 9 : For a missing delivery shift the inventory level of all items to the next delivery.\par
Step 10 : Again finding out the order release date and temporary inventory level of all items for the remaining deliveries because of missing the delivery\par
Step 11 : Repeat steps 9 and 10 for the remaining missing deliveries.\par
Step 12 : Holding the missing deliveries in an array.\par
Step 13 : Finally calculate the order release date and inventory level of all items for which deliveries are possible.\par
Step 14 : Show which deliveries can't be met and the required weeks/days to meet those deliveries.\par
Step 15 : Show the output of MRP that is the time-phased requirements for assemblies, parts and raw materials.\par
Step 16 : Show the final inventory level of all items.\par
Step 17 : Finally save the MRP output to a text file.\par
Number of final item required for order no.1: 300\par
In which week/day order no.5 has to be released: 12 Number of final item required for order no.  IV. 
\section[{Conclusion}]{Conclusion}\par
There are several sources of uncertainty that we have ignored so far. These include uncertainty in the quantity demanded (forecast errors) and the quantity supplied (yield losses), and uncertainty in the timing of demand and the timing of supply (random lead times). The largest cost or disadvantage of any MRP system is the cost of purchasing or leasing a computer system to support the function. However, with increasing inventory and production cost, along with decreasing computation costs the MRP system is getting easier to justify. The software is user friendly and was tested with various types of products and gave accurate results when verified with the manual method of calculation. So, the software is universal. The time-phased requirements for assemblies, parts and raw materials and final inventory level can easily be identified with the software. With the software local small scale manufacturing industries can improve customer service with lower inventories and reduce overtime and idle time.   {\ref ----------------------------------\textbackslash n"}); printf("ID: "); scanf("\%d", \&info[0].id); printf("\textbackslash nName: "); scanf("\%s",\&info[0].name); info[0].n\textunderscore l\textunderscore item=b \hyperref[b0]{[1]}; printf("\textbackslash nInventory level: "); scanf("\%d", \&info[0].i\textunderscore level); printf("\textbackslash nLead time: "); scanf("\%d", \&info[0].l\textunderscore time); if (info[0].n\textunderscore l\textunderscore item==0) \{ printf("\textbackslash nLot size [use a huge number i.e.; 32000 when 'lot for lot' order]: "); scanf("\%d", \&info[0].l\textunderscore size); //Enter 32000 only when lot for lot otherwise use the lot size \} for(i=1;i<a;i++) \{ printf("\textbackslash n\textbackslash n\textbackslash nGive the information for item ID-\%d:\textbackslash n-----------------------------------",info \begin{figure}[htbp]
\noindent\textbf{}\includegraphics[]{image-2.png}
\caption{\label{fig_0}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{}\includegraphics[]{image-3.png}
\caption{\label{fig_1}}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{22}\includegraphics[]{image-4.png}
\caption{\label{fig_2}Figure 2 : 2 C}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{}\includegraphics[]{image-5.png}
\caption{\label{fig_3}©C}\end{figure}
     \begin{figure}[htbp]
\noindent\textbf{1} \par 
\begin{longtable}{}
\end{longtable} \par
 
\caption{\label{tab_0}Table 1 :}\end{figure}
 \begin{figure}[htbp]
\noindent\textbf{} \par 
\begin{longtable}{P{0.6061912225705329\textwidth}P{0.029310344827586206\textwidth}P{0.11857366771159875\textwidth}P{0.09592476489028214\textwidth}}
\multicolumn{2}{l}{Item Name}\tabcellsep Item ID\tabcellsep Quantity\\
Week/day-2\tabcellsep \tabcellsep \\
C\tabcellsep \tabcellsep 181\tabcellsep 300\\
D\tabcellsep \tabcellsep 148\tabcellsep 350\\
Week/day-3\tabcellsep \tabcellsep \\
E\tabcellsep \tabcellsep 201\tabcellsep 250\\
C\tabcellsep \tabcellsep 181\tabcellsep 600\\
D\tabcellsep \tabcellsep 148\tabcellsep 600\\
Week/day-4\tabcellsep \tabcellsep \\
B\tabcellsep \tabcellsep 127\tabcellsep 200\\
E\tabcellsep \tabcellsep 201\tabcellsep 250\\
Week/day-5\tabcellsep \tabcellsep \\
A\tabcellsep \tabcellsep 101\tabcellsep 100\\
B\tabcellsep \tabcellsep 127\tabcellsep 300\\
C\tabcellsep \tabcellsep 181\tabcellsep 1200\\
D\tabcellsep \tabcellsep 148\tabcellsep 1200\\
Week/day-6\tabcellsep \tabcellsep \\
A\tabcellsep \tabcellsep 101\tabcellsep 150\\
E\tabcellsep \tabcellsep 201\tabcellsep 750\\
Week/day-7\tabcellsep \tabcellsep \\
B\tabcellsep \tabcellsep 127\tabcellsep 600\\
C\tabcellsep \tabcellsep 181\tabcellsep 1000\\
D\tabcellsep \tabcellsep 148\tabcellsep 1000\\
Week/day-8\tabcellsep \tabcellsep \\
A\tabcellsep \tabcellsep 101\tabcellsep 300\\
E\tabcellsep \tabcellsep 201\tabcellsep 500\\
Week/day-9\tabcellsep \tabcellsep \\
B\tabcellsep \tabcellsep 127\tabcellsep 500\\
Week/day-10\tabcellsep \tabcellsep \\
A\tabcellsep \tabcellsep 101\tabcellsep 250\\
\multicolumn{2}{l}{INVENTORY LEVEL:}\tabcellsep \\
\multicolumn{2}{l}{-------------------------}\tabcellsep \\
Item Name\tabcellsep Item ID\tabcellsep \multicolumn{2}{l}{Inventory Level}\\
A\tabcellsep 101\tabcellsep 0\\
B\tabcellsep 127\tabcellsep 0\\
C\tabcellsep 181\tabcellsep 0\\
D\tabcellsep 148\tabcellsep 0\\
E\tabcellsep 201\tabcellsep 150\\
\multicolumn{4}{l}{The firm has to start purchase process from}\\
\multicolumn{4}{l}{week no. 2 to meet the remaining orders. It should order}\\
\multicolumn{4}{l}{300 units of item 'C' and 350 units of item 'D' from}\\
\multicolumn{4}{l}{suppliers in second week and so on. The firm should}\\
\multicolumn{4}{l}{start assembly process with items 'D' and 'E' to produce}\\
\multicolumn{2}{l}{200 units of item 'B'.}\tabcellsep \end{longtable} \par
 
\caption{\label{tab_3}}\end{figure}
 		 		\backmatter  			 \par
scanf("\%d", \&info  {\ref [i]}.i\textunderscore level); printf("\textbackslash nLead time: "); scanf("\%d", \&info  {\ref [i]}.l\textunderscore time); if  {\ref (info[i]}.n\textunderscore l\textunderscore item==0) \{ printf("\textbackslash nLot size [use a huge number i.e.; 32000 when 'lot for lot' order]: "); scanf("\%d", \&info  {\ref [i]}.l\textunderscore size); //Enter 32000 only when lot for lot otherwise use the lot size \} else info  {\ref [i]}.l\textunderscore size=32000; \} // Input the information of MPS printf("\textbackslash n\textbackslash n\textbackslash nEnter the total number of orders: "); scanf("\%d", \&d); printf("\textbackslash n"); for(i=1;i<=d;i++) \{ printf("\textbackslash nIn which week/day order no.\%d has to be released: ",i); scanf("\%d", \&c[i]); printf("\textbackslash nNumber of final item required for delivery no.\%d: ", i); scanf("\%d", \&g[i]); printf("\textbackslash n"); \} s=c[i-1]; // The total number of weeks/days used according to MPS // Use the temporary inventory level variables to hold the inventory level of each item temporarily which will be destructed after calculation for(i=0;i<a;i++) info  {\ref [i]}.t\textunderscore i\textunderscore level[0]=info  {\ref [i]}.i\textunderscore level; // Finding out the order release date and inventory level of independent item (final item) for each delivery for(i=1 \par
the value of m is negative, it means the delivery is not possible and m holds the days required to meet the delivery if(m<=0) \{ //Shifting the inventory level of all items of the missing delivery to the next delivery for(q=0;q<a;q++) \{ info  {\ref [q]}.t\textunderscore i\textunderscore level[k]=info  {\ref [q]}.t\textunderscore i\textunderscore level[k-1]; \} //Again finding out the order release date and inventory level of all items for the remaining deliveries because of missing the delivery for(i=k+1\par
printf("\textbackslash n\textbackslash nThe order no. \%d can't be met. This order needs another \%d more day/week",k,x+1); fprintf(fp,"\textbackslash nThe order no. \%d can't be met. This order needs another \%d more day/week",k,x+1); \} else \{ printf("\textbackslash n\textbackslash nThe order no. \%d can't be met. This order needs another \%d more days/weeks",k,x+1); fprintf(fp,"\textbackslash nThe order no. \%d can't be met. This order needs another \%d more days/weeks",k,x+1); \}\} \} // Now calculate the order release date and inventory level of all items for which deliveries are possible for(k=1;k<=d;k++) \{ q=1; for(m=1;m<j;m++      {\ref --------------"}); fprintf(fp,"\textbackslash n\textbackslash n\textbackslash n\textbackslash n\textbackslash n INVENTORY LEVEL:\textbackslash n ---------------"); printf("\textbackslash n\textbackslash n Item\textunderscore Name Item\textunderscore ID Inventory\textunderscore level\textbackslash n"); printf(" -------------------------------\textbackslash n"); fprintf(fp,"\textbackslash n\textbackslash n Item\textunderscore Name Item\textunderscore ID Inventory\textunderscore level\textbackslash n"); fprintf(fp," -------------------------------\textbackslash n"); for(i=0;i<a;i++) \{ printf(" "); fprintf(fp," "); printf("\%s",info  {\ref [} ------------------------------"); for(i=1;i<=s;i++) \{ x=i; for(k=1;k<=d;k++) \{ q=1; for(m=1;m<j;m++) \{ if(k==p[m]) \{			 			  				\begin{bibitemlist}{1}
\bibitem[ Development of a Materials Requirements Planning (MRP) Software. The Pacific Journal of Science and Technology]{b1}\label{b1} 	 		\textit{},  	 	 		\textit{Development of a Materials Requirements Planning (MRP) Software. The Pacific Journal of Science and Technology}  		13 p. .  	 
\bibitem[Hopp and Spearman ()]{b4}\label{b4} 	 		\textit{},  		 			W J Hopp 		,  		 			M L Spearman 		.  		2004.  	 
\bibitem[Oladokun and Olaitan ()]{b0}\label{b0} 	 		\textit{},  		 			V O Oladokun 		,  		 			O A Olaitan 		.  		2012.  	 
\bibitem[Waldner and Jean-Baptiste ()]{b2}\label{b2} 	 		\textit{CIM: Principles of Computer Integrated Manufacturing},  		 			\& Waldner 		,  		 			Jean-Baptiste 		.  		1992. John Wiley \& Sons Ltd.  	 
\bibitem[Commissioned Paper To Pull or Not to Pull: What Is the Question? Manufacturing & Service Operations Management]{b5}\label{b5} 	 		\textit{Commissioned Paper To Pull or Not to Pull: What Is the Question? Manufacturing \& Service Operations Management},  		 	 
\bibitem[Ie (1991)]{b6}\label{b6} 	 		\textit{Competition in manufacturing leads to MRP},  		 			Ie 		.  		1991. July. II p. .  	 
\bibitem[Biggs ()]{b11}\label{b11} 	 		‘Heuristic Lot-Sizing and Sequencing Rules in a Multistage Production-Inventory System’.  		 			J R Biggs 		.  	 	 		\textit{Decision Science}  		1979. 19 p. .  	 
\bibitem[Lynn ()]{b12}\label{b12} 	 		‘Material Requirement Planning: Tinkertoy Lawn Mower Activity. Teaching Brief’.  		 			A F Lynn 		.  	 	 		\textit{Decision Sciences Journal of Innovative Education}  		2006. 4  (1) .  	 
\bibitem[Moustakis ()]{b8}\label{b8} 	 		 			D V Moustakis 		.  		\textit{Material Requirements Planning},  				2000. p. 3.  	 
\bibitem[Starr ()]{b7}\label{b7} 	 		\textit{Operation Management: A Systems Approach},  		 			K M Starr 		.  		1996. Boyd \& Fraser: Chicago, IL.  	 
\bibitem[Stevenson ()]{b9}\label{b9} 	 		\textit{Operations Management (8 th Edition)},  		 			W J Stevenson 		.  		2011. New York, NY: McGraw-Hill Inc. p. .  	 
\bibitem[Steinberge and Napier ()]{b10}\label{b10} 	 		‘Optimal Multi-Level Lot Sizing for Requirements Planning Systems’.  		 			S J Steinberge 		,  		 			H A Napier 		.  	 	 		\textit{Management Sci}  		1980. 26 p. .  	 
\bibitem[Jain and Aggarwal ()]{b3}\label{b3} 	 		\textit{Production planning control and Industrial Management},  		 			K C Jain 		,  		 			L N Aggarwal 		.  		2011. p. .  	 
\end{bibitemlist}
 			 		 	 
\end{document}
