<?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
-->
<section xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5.0" 
    xmlns:xl="http://www.w3.org/1999/xlink" 
    xmlns:xi="http://www.w3.org/2001/XInclude"
    xsi:schemaLocation="http://docbook.org/ns/docbook ../../../../content/dtd/docbook.xsd"
    xmlns="http://docbook.org/ns/docbook">
    <title>OFBiz:MFG: BoM's'</title>
     <para>
     Dit scherm biedt je de mogelijkheid om nieuwe BoM's aan te maken en om ze te vinden en te bekijken.
     </para>
    <para>Vanaf hier kun je doorklikken naar:</para>
    <itemizedlist>
     <listitem><para>kalenders</para></listitem>
     <listitem><para>kalenderweken</para></listitem>
    </itemizedlist>
    <section>
    <title>Nieuwe BoM aanmaken</title>
    <para>Klik op de knop 'BoM aanmaken' om een nieuwe BoM te definieren.</para>
    </section>
    <section>
    <title>Overzicht Bom's</title>
    <para>Dit overzicht toont de beschikbare BoM's.
     Klik op de ID van de BoM om die te bekijken.
     </para>
    </section>
</section>