<?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: Component kostencalculatie beheren</title>
        <para>
        Dit scherm biedt de mogelijkheid om nieuwe kostencalculaties aan te maken en te wijzigen.
        </para>
        <section>
            <title>Kostencalculatie wijzigen</title>
            <para>
            Vul het eerste deel van het scherm in om de kostencalculatie aan te maken. Klik vervolgens op 'Opslaan' om de gegevens vast te leggen. 
            Het scherm wordt ververst en de ingevoerde gegevens worden in het onderste deel getoond
            </para>
        </section>
        <section>
            <title>Overzicht kostencalculaties</title>
            <para>
            Dit deel van het scherm toont de beschikbare kostencalculaties. Klik op de ID van de kostencalculatie (in de eerste kolom) om deze te wijzigen. 
            Klik op de knop 'Verwijderen' om een kostencalculatie te verwijderen.
            </para>
        </section>
</section>