Explorar o código

reloc

git-svn-id: http://repo.nplusc.de/svn/iZink@24 8b19561d-0d00-6744-8ac1-9afc8f58a8aa
masterX244 %!s(int64=12) %!d(string=hai) anos
pai
achega
2a3cd38bc0

+ 74 - 0
UpidTK/build.xml

@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- You may freely edit this file. See commented blocks below for -->
+<!-- some examples of how to customize the build. -->
+<!-- (If you delete it and reopen the project it will be recreated.) -->
+<!-- By default, only the Clean and Build commands use this build script. -->
+<!-- Commands such as Run, Debug, and Test only use this build script if -->
+<!-- the Compile on Save feature is turned off for the project. -->
+<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
+<!-- in the project's Project Properties dialog box.-->
+<project name="UpidTK" default="default" basedir=".">
+    <description>Builds, tests, and runs the project UpidTK.</description>
+    <import file="nbproject/build-impl.xml"/>
+    <!--
+
+    There exist several targets which are by default empty and which can be 
+    used for execution of your tasks. These targets are usually executed 
+    before and after some main targets. They are: 
+
+      -pre-init:                 called before initialization of project properties
+      -post-init:                called after initialization of project properties
+      -pre-compile:              called before javac compilation
+      -post-compile:             called after javac compilation
+      -pre-compile-single:       called before javac compilation of single file
+      -post-compile-single:      called after javac compilation of single file
+      -pre-compile-test:         called before javac compilation of JUnit tests
+      -post-compile-test:        called after javac compilation of JUnit tests
+      -pre-compile-test-single:  called before javac compilation of single JUnit test
+      -post-compile-test-single: called after javac compilation of single JUunit test
+      -pre-jar:                  called before JAR building
+      -post-jar:                 called after JAR building
+      -post-clean:               called after cleaning build products
+
+    (Targets beginning with '-' are not intended to be called on their own.)
+
+    Example of inserting an obfuscator after compilation could look like this:
+
+        <target name="-post-compile">
+            <obfuscate>
+                <fileset dir="${build.classes.dir}"/>
+            </obfuscate>
+        </target>
+
+    For list of available properties check the imported 
+    nbproject/build-impl.xml file. 
+
+
+    Another way to customize the build is by overriding existing main targets.
+    The targets of interest are: 
+
+      -init-macrodef-javac:     defines macro for javac compilation
+      -init-macrodef-junit:     defines macro for junit execution
+      -init-macrodef-debug:     defines macro for class debugging
+      -init-macrodef-java:      defines macro for class execution
+      -do-jar-with-manifest:    JAR building (if you are using a manifest)
+      -do-jar-without-manifest: JAR building (if you are not using a manifest)
+      run:                      execution of project 
+      -javadoc-build:           Javadoc generation
+      test-report:              JUnit report generation
+
+    An example of overriding the target for project execution could look like this:
+
+        <target name="run" depends="UpidTK-impl.jar">
+            <exec dir="bin" executable="launcher.exe">
+                <arg file="${dist.jar}"/>
+            </exec>
+        </target>
+
+    Notice that the overridden target depends on the jar target and not only on 
+    the compile target as the regular run target does. Again, for a list of available 
+    properties which you can use, check the target you are overriding in the
+    nbproject/build-impl.xml file. 
+
+    -->
+</project>

+ 3 - 0
UpidTK/manifest.mf

@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+X-COMMENT: Main-Class will be added automatically by build
+

+ 1425 - 0
UpidTK/nbproject/build-impl.xml

@@ -0,0 +1,1425 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+*** GENERATED FROM project.xml - DO NOT EDIT  ***
+***         EDIT ../build.xml INSTEAD         ***
+
+For the purpose of easier reading the script
+is divided into following sections:
+
+  - initialization
+  - compilation
+  - jar
+  - execution
+  - debugging
+  - javadoc
+  - test compilation
+  - test execution
+  - test debugging
+  - applet
+  - cleanup
+
+        -->
+<project xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" basedir=".." default="default" name="UpidTK-impl">
+    <fail message="Please build using Ant 1.8.0 or higher.">
+        <condition>
+            <not>
+                <antversion atleast="1.8.0"/>
+            </not>
+        </condition>
+    </fail>
+    <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/>
+    <!-- 
+                ======================
+                INITIALIZATION SECTION 
+                ======================
+            -->
+    <target name="-pre-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="-pre-init" name="-init-private">
+        <property file="nbproject/private/config.properties"/>
+        <property file="nbproject/private/configs/${config}.properties"/>
+        <property file="nbproject/private/private.properties"/>
+    </target>
+    <target depends="-pre-init,-init-private" name="-init-user">
+        <property file="${user.properties.file}"/>
+        <!-- The two properties below are usually overridden -->
+        <!-- by the active platform. Just a fallback. -->
+        <property name="default.javac.source" value="1.4"/>
+        <property name="default.javac.target" value="1.4"/>
+    </target>
+    <target depends="-pre-init,-init-private,-init-user" name="-init-project">
+        <property file="nbproject/configs/${config}.properties"/>
+        <property file="nbproject/project.properties"/>
+    </target>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property" name="-do-init">
+        <available file="${manifest.file}" property="manifest.available"/>
+        <condition property="splashscreen.available">
+            <and>
+                <not>
+                    <equals arg1="${application.splash}" arg2="" trim="true"/>
+                </not>
+                <available file="${application.splash}"/>
+            </and>
+        </condition>
+        <condition property="main.class.available">
+            <and>
+                <isset property="main.class"/>
+                <not>
+                    <equals arg1="${main.class}" arg2="" trim="true"/>
+                </not>
+            </and>
+        </condition>
+        <condition property="manifest.available+main.class">
+            <and>
+                <isset property="manifest.available"/>
+                <isset property="main.class.available"/>
+            </and>
+        </condition>
+        <condition property="do.archive">
+            <not>
+                <istrue value="${jar.archive.disabled}"/>
+            </not>
+        </condition>
+        <condition property="do.mkdist">
+            <and>
+                <isset property="do.archive"/>
+                <isset property="libs.CopyLibs.classpath"/>
+                <not>
+                    <istrue value="${mkdist.disabled}"/>
+                </not>
+            </and>
+        </condition>
+        <condition property="manifest.available+main.class+mkdist.available">
+            <and>
+                <istrue value="${manifest.available+main.class}"/>
+                <isset property="do.mkdist"/>
+            </and>
+        </condition>
+        <condition property="do.archive+manifest.available">
+            <and>
+                <isset property="manifest.available"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="do.archive+main.class.available">
+            <and>
+                <isset property="main.class.available"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="do.archive+splashscreen.available">
+            <and>
+                <isset property="splashscreen.available"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="do.archive+manifest.available+main.class">
+            <and>
+                <istrue value="${manifest.available+main.class}"/>
+                <istrue value="${do.archive}"/>
+            </and>
+        </condition>
+        <condition property="manifest.available-mkdist.available">
+            <or>
+                <istrue value="${manifest.available}"/>
+                <isset property="do.mkdist"/>
+            </or>
+        </condition>
+        <condition property="manifest.available+main.class-mkdist.available">
+            <or>
+                <istrue value="${manifest.available+main.class}"/>
+                <isset property="do.mkdist"/>
+            </or>
+        </condition>
+        <condition property="have.tests">
+            <or>
+                <available file="${test.src.dir}"/>
+            </or>
+        </condition>
+        <condition property="have.sources">
+            <or>
+                <available file="${src.dir}"/>
+            </or>
+        </condition>
+        <condition property="netbeans.home+have.tests">
+            <and>
+                <isset property="netbeans.home"/>
+                <isset property="have.tests"/>
+            </and>
+        </condition>
+        <condition property="no.javadoc.preview">
+            <and>
+                <isset property="javadoc.preview"/>
+                <isfalse value="${javadoc.preview}"/>
+            </and>
+        </condition>
+        <property name="run.jvmargs" value=""/>
+        <property name="run.jvmargs.ide" value=""/>
+        <property name="javac.compilerargs" value=""/>
+        <property name="work.dir" value="${basedir}"/>
+        <condition property="no.deps">
+            <and>
+                <istrue value="${no.dependencies}"/>
+            </and>
+        </condition>
+        <property name="javac.debug" value="true"/>
+        <property name="javadoc.preview" value="true"/>
+        <property name="application.args" value=""/>
+        <property name="source.encoding" value="${file.encoding}"/>
+        <property name="runtime.encoding" value="${source.encoding}"/>
+        <condition property="javadoc.encoding.used" value="${javadoc.encoding}">
+            <and>
+                <isset property="javadoc.encoding"/>
+                <not>
+                    <equals arg1="${javadoc.encoding}" arg2=""/>
+                </not>
+            </and>
+        </condition>
+        <property name="javadoc.encoding.used" value="${source.encoding}"/>
+        <property name="includes" value="**"/>
+        <property name="excludes" value=""/>
+        <property name="do.depend" value="false"/>
+        <condition property="do.depend.true">
+            <istrue value="${do.depend}"/>
+        </condition>
+        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
+        <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
+            <length length="0" string="${endorsed.classpath}" when="greater"/>
+        </condition>
+        <condition else="false" property="jdkBug6558476">
+            <and>
+                <matches pattern="1\.[56]" string="${java.specification.version}"/>
+                <not>
+                    <os family="unix"/>
+                </not>
+            </and>
+        </condition>
+        <property name="javac.fork" value="${jdkBug6558476}"/>
+        <property name="jar.index" value="false"/>
+        <property name="jar.index.metainf" value="${jar.index}"/>
+        <property name="copylibs.rebase" value="true"/>
+        <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/>
+        <condition property="junit.available">
+            <or>
+                <available classname="org.junit.Test" classpath="${run.test.classpath}"/>
+                <available classname="junit.framework.Test" classpath="${run.test.classpath}"/>
+            </or>
+        </condition>
+        <condition property="testng.available">
+            <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/>
+        </condition>
+        <condition property="junit+testng.available">
+            <and>
+                <istrue value="${junit.available}"/>
+                <istrue value="${testng.available}"/>
+            </and>
+        </condition>
+        <condition else="testng" property="testng.mode" value="mixed">
+            <istrue value="${junit+testng.available}"/>
+        </condition>
+        <condition else="" property="testng.debug.mode" value="-mixed">
+            <istrue value="${junit+testng.available}"/>
+        </condition>
+    </target>
+    <target name="-post-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check">
+        <fail unless="src.dir">Must set src.dir</fail>
+        <fail unless="test.src.dir">Must set test.src.dir</fail>
+        <fail unless="build.dir">Must set build.dir</fail>
+        <fail unless="dist.dir">Must set dist.dir</fail>
+        <fail unless="build.classes.dir">Must set build.classes.dir</fail>
+        <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail>
+        <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail>
+        <fail unless="build.test.results.dir">Must set build.test.results.dir</fail>
+        <fail unless="build.classes.excludes">Must set build.classes.excludes</fail>
+        <fail unless="dist.jar">Must set dist.jar</fail>
+    </target>
+    <target name="-init-macrodef-property">
+        <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1">
+            <attribute name="name"/>
+            <attribute name="value"/>
+            <sequential>
+                <property name="@{name}" value="${@{value}}"/>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors">
+        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${src.dir}" name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="${javac.debug}" name="debug"/>
+            <attribute default="${empty.dir}" name="sourcepath"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <mkdir dir="@{apgeneratedsrcdir}"/>
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <compilerarg value="-processorpath"/>
+                    <compilerarg path="@{processorpath}:${empty.dir}"/>
+                    <compilerarg line="${ap.processors.internal}"/>
+                    <compilerarg line="${annotation.processing.processor.options}"/>
+                    <compilerarg value="-s"/>
+                    <compilerarg path="@{apgeneratedsrcdir}"/>
+                    <compilerarg line="${ap.proc.none.internal}"/>
+                    <customize/>
+                </javac>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-ap-cmdline-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
+        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${src.dir}" name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="${javac.debug}" name="debug"/>
+            <attribute default="${empty.dir}" name="sourcepath"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <compilerarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <customize/>
+                </javac>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac">
+        <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${src.dir}" name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}" name="classpath"/>
+            <sequential>
+                <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}">
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                </depend>
+            </sequential>
+        </macrodef>
+        <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <sequential>
+                <fail unless="javac.includes">Must set javac.includes</fail>
+                <pathconvert pathsep="${line.separator}" property="javac.includes.binary">
+                    <path>
+                        <filelist dir="@{destdir}" files="${javac.includes}"/>
+                    </path>
+                    <globmapper from="*.java" to="*.class"/>
+                </pathconvert>
+                <tempfile deleteonexit="true" property="javac.includesfile.binary"/>
+                <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/>
+                <delete>
+                    <files includesfile="${javac.includesfile.binary}"/>
+                </delete>
+                <delete>
+                    <fileset file="${javac.includesfile.binary}"/>
+                </delete>
+            </sequential>
+        </macrodef>
+    </target>
+    <target if="${junit.available}" name="-init-macrodef-junit-init">
+        <condition else="false" property="nb.junit.batch" value="true">
+            <and>
+                <istrue value="${junit.available}"/>
+                <not>
+                    <isset property="test.method"/>
+                </not>
+            </and>
+        </condition>
+        <condition else="false" property="nb.junit.single" value="true">
+            <and>
+                <istrue value="${junit.available}"/>
+                <isset property="test.method"/>
+            </and>
+        </condition>
+    </target>
+    <target name="-init-test-properties">
+        <property name="test.binaryincludes" value="&lt;nothing&gt;"/>
+        <property name="test.binarytestincludes" value=""/>
+        <property name="test.binaryexcludes" value=""/>
+    </target>
+    <target if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}">
+        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property name="junit.forkmode" value="perTest"/>
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
+                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
+                    <syspropertyset>
+                        <propertyref prefix="test-sys-prop."/>
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <formatter type="brief" usefile="false"/>
+                    <formatter type="xml"/>
+                    <jvmarg value="-ea"/>
+                    <customize/>
+                </junit>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
+        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property name="junit.forkmode" value="perTest"/>
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
+                    <batchtest todir="${build.test.results.dir}">
+                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+                            <filename name="@{testincludes}"/>
+                        </fileset>
+                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
+                            <filename name="${test.binarytestincludes}"/>
+                        </fileset>
+                    </batchtest>
+                    <syspropertyset>
+                        <propertyref prefix="test-sys-prop."/>
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <formatter type="brief" usefile="false"/>
+                    <formatter type="xml"/>
+                    <jvmarg value="-ea"/>
+                    <customize/>
+                </junit>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/>
+    <target if="${testng.available}" name="-init-macrodef-testng">
+        <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}">
+                    <isset property="test.method"/>
+                </condition>
+                <union id="test.set">
+                    <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}">
+                        <filename name="@{testincludes}"/>
+                    </fileset>
+                </union>
+                <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/>
+                <testng classfilesetref="test.set" failureProperty="tests.failed" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="UpidTK" testname="TestNG tests" workingDir="${work.dir}">
+                    <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/>
+                    <propertyset>
+                        <propertyref prefix="test-sys-prop."/>
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                    </propertyset>
+                    <customize/>
+                </testng>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-macrodef-test-impl">
+        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element implicit="true" name="customize" optional="true"/>
+            <sequential>
+                <echo>No tests executed.</echo>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl">
+        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element implicit="true" name="customize" optional="true"/>
+            <sequential>
+                <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+                    <customize/>
+                </j2seproject3:junit>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl">
+        <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element implicit="true" name="customize" optional="true"/>
+            <sequential>
+                <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+                    <customize/>
+                </j2seproject3:testng>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test">
+        <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <sequential>
+                <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+                    <customize>
+                        <classpath>
+                            <path path="${run.test.classpath}"/>
+                        </classpath>
+                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                        <jvmarg line="${run.jvmargs}"/>
+                        <jvmarg line="${run.jvmargs.ide}"/>
+                    </customize>
+                </j2seproject3:test-impl>
+            </sequential>
+        </macrodef>
+    </target>
+    <target if="${junit.available}" name="-init-macrodef-junit-debug" unless="${nb.junit.batch}">
+        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property name="junit.forkmode" value="perTest"/>
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
+                    <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/>
+                    <syspropertyset>
+                        <propertyref prefix="test-sys-prop."/>
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <formatter type="brief" usefile="false"/>
+                    <formatter type="xml"/>
+                    <jvmarg value="-ea"/>
+                    <jvmarg line="${debug-args-line}"/>
+                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+                    <customize/>
+                </junit>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-test-properties" if="${nb.junit.batch}" name="-init-macrodef-junit-debug-batch">
+        <macrodef name="junit-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property name="junit.forkmode" value="perTest"/>
+                <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}">
+                    <batchtest todir="${build.test.results.dir}">
+                        <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}">
+                            <filename name="@{testincludes}"/>
+                        </fileset>
+                        <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}">
+                            <filename name="${test.binarytestincludes}"/>
+                        </fileset>
+                    </batchtest>
+                    <syspropertyset>
+                        <propertyref prefix="test-sys-prop."/>
+                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <formatter type="brief" usefile="false"/>
+                    <formatter type="xml"/>
+                    <jvmarg value="-ea"/>
+                    <jvmarg line="${debug-args-line}"/>
+                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+                    <customize/>
+                </junit>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" if="${junit.available}" name="-init-macrodef-junit-debug-impl">
+        <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element implicit="true" name="customize" optional="true"/>
+            <sequential>
+                <j2seproject3:junit-debug excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+                    <customize/>
+                </j2seproject3:junit-debug>
+            </sequential>
+        </macrodef>
+    </target>
+    <target if="${testng.available}" name="-init-macrodef-testng-debug">
+        <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${main.class}" name="testClass"/>
+            <attribute default="" name="testMethod"/>
+            <element name="customize2" optional="true"/>
+            <sequential>
+                <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}">
+                    <isset property="test.method"/>
+                </condition>
+                <condition else="-suitename UpidTK -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}">
+                    <matches pattern=".*\.xml" string="@{testClass}"/>
+                </condition>
+                <delete dir="${build.test.results.dir}" quiet="true"/>
+                <mkdir dir="${build.test.results.dir}"/>
+                <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}">
+                    <customize>
+                        <customize2/>
+                        <jvmarg value="-ea"/>
+                        <arg line="${testng.debug.mode}"/>
+                        <arg line="-d ${build.test.results.dir}"/>
+                        <arg line="-listener org.testng.reporters.VerboseReporter"/>
+                        <arg line="${testng.cmd.args}"/>
+                    </customize>
+                </j2seproject3:debug>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl">
+        <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${main.class}" name="testClass"/>
+            <attribute default="" name="testMethod"/>
+            <element implicit="true" name="customize2" optional="true"/>
+            <sequential>
+                <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}">
+                    <customize2/>
+                </j2seproject3:testng-debug>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit">
+        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <attribute default="${main.class}" name="testClass"/>
+            <attribute default="" name="testMethod"/>
+            <sequential>
+                <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}">
+                    <customize>
+                        <classpath>
+                            <path path="${run.test.classpath}"/>
+                        </classpath>
+                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                        <jvmarg line="${run.jvmargs}"/>
+                        <jvmarg line="${run.jvmargs.ide}"/>
+                    </customize>
+                </j2seproject3:test-debug-impl>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng">
+        <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <attribute default="${main.class}" name="testClass"/>
+            <attribute default="" name="testMethod"/>
+            <sequential>
+                <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}">
+                    <customize2>
+                        <syspropertyset>
+                            <propertyref prefix="test-sys-prop."/>
+                            <mapper from="test-sys-prop.*" to="*" type="glob"/>
+                        </syspropertyset>
+                    </customize2>
+                </j2seproject3:testng-debug-impl>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/>
+    <!--
+                pre NB7.2 profiling section; consider it deprecated
+            -->
+    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/>
+    <target if="profiler.info.jvmargs.agent" name="-profile-pre-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target if="profiler.info.jvmargs.agent" name="-profile-post-init">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile">
+        <macrodef name="resolve">
+            <attribute name="name"/>
+            <attribute name="value"/>
+            <sequential>
+                <property name="@{name}" value="${env.@{value}}"/>
+            </sequential>
+        </macrodef>
+        <macrodef name="profile">
+            <attribute default="${main.class}" name="classname"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property environment="env"/>
+                <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/>
+                <java classname="@{classname}" dir="${profiler.info.dir}" fork="true" jvm="${profiler.info.jvm}">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg value="${profiler.info.jvmargs.agent}"/>
+                    <jvmarg line="${profiler.info.jvmargs}"/>
+                    <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
+                    <arg line="${application.args}"/>
+                    <classpath>
+                        <path path="${run.classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check">
+        <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail>
+        <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail>
+    </target>
+    <!--
+                end of pre NB7.2 profiling section
+            -->
+    <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
+        <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1">
+            <attribute default="${main.class}" name="name"/>
+            <attribute default="${debug.classpath}" name="classpath"/>
+            <attribute default="" name="stopclassname"/>
+            <sequential>
+                <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}">
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                </nbjpdastart>
+            </sequential>
+        </macrodef>
+        <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1">
+            <attribute default="${build.classes.dir}" name="dir"/>
+            <sequential>
+                <nbjpdareload>
+                    <fileset dir="@{dir}" includes="${fix.classes}">
+                        <include name="${fix.includes}*.class"/>
+                    </fileset>
+                </nbjpdareload>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-debug-args">
+        <property name="version-output" value="java version &quot;${ant.java.version}"/>
+        <condition property="have-jdk-older-than-1.4">
+            <or>
+                <contains string="${version-output}" substring="java version &quot;1.0"/>
+                <contains string="${version-output}" substring="java version &quot;1.1"/>
+                <contains string="${version-output}" substring="java version &quot;1.2"/>
+                <contains string="${version-output}" substring="java version &quot;1.3"/>
+            </or>
+        </condition>
+        <condition else="-Xdebug" property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none">
+            <istrue value="${have-jdk-older-than-1.4}"/>
+        </condition>
+        <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem">
+            <os family="windows"/>
+        </condition>
+        <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}">
+            <isset property="debug.transport"/>
+        </condition>
+    </target>
+    <target depends="-init-debug-args" name="-init-macrodef-debug">
+        <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${main.class}" name="classname"/>
+            <attribute default="${debug.classpath}" name="classpath"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <java classname="@{classname}" dir="${work.dir}" fork="true">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg line="${debug-args-line}"/>
+                    <jvmarg value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
+                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
+                    <jvmarg line="${run.jvmargs}"/>
+                    <jvmarg line="${run.jvmargs.ide}"/>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-macrodef-java">
+        <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1">
+            <attribute default="${main.class}" name="classname"/>
+            <attribute default="${run.classpath}" name="classpath"/>
+            <attribute default="jvm" name="jvm"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <java classname="@{classname}" dir="${work.dir}" fork="true">
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
+                    <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
+                    <jvmarg line="${run.jvmargs}"/>
+                    <jvmarg line="${run.jvmargs.ide}"/>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-macrodef-copylibs">
+        <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3">
+            <attribute default="${manifest.file}" name="manifest"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
+                <pathconvert property="run.classpath.without.build.classes.dir">
+                    <path path="${run.classpath}"/>
+                    <map from="${build.classes.dir.resolved}" to=""/>
+                </pathconvert>
+                <pathconvert pathsep=" " property="jar.classpath">
+                    <path path="${run.classpath.without.build.classes.dir}"/>
+                    <chainedmapper>
+                        <flattenmapper/>
+                        <filtermapper>
+                            <replacestring from=" " to="%20"/>
+                        </filtermapper>
+                        <globmapper from="*" to="lib/*"/>
+                    </chainedmapper>
+                </pathconvert>
+                <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/>
+                <copylibs compress="${jar.compress}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}">
+                    <fileset dir="${build.classes.dir}"/>
+                    <manifest>
+                        <attribute name="Class-Path" value="${jar.classpath}"/>
+                        <customize/>
+                    </manifest>
+                </copylibs>
+            </sequential>
+        </macrodef>
+    </target>
+    <target name="-init-presetdef-jar">
+        <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1">
+            <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}">
+                <j2seproject1:fileset dir="${build.classes.dir}"/>
+            </jar>
+        </presetdef>
+    </target>
+    <target name="-init-ap-cmdline-properties">
+        <property name="annotation.processing.enabled" value="true"/>
+        <property name="annotation.processing.processors.list" value=""/>
+        <property name="annotation.processing.processor.options" value=""/>
+        <property name="annotation.processing.run.all.processors" value="true"/>
+        <property name="javac.processorpath" value="${javac.classpath}"/>
+        <property name="javac.test.processorpath" value="${javac.test.classpath}"/>
+        <condition property="ap.supported.internal" value="true">
+            <not>
+                <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/>
+            </not>
+        </condition>
+    </target>
+    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported">
+        <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}">
+            <isfalse value="${annotation.processing.run.all.processors}"/>
+        </condition>
+        <condition else="" property="ap.proc.none.internal" value="-proc:none">
+            <isfalse value="${annotation.processing.enabled}"/>
+        </condition>
+    </target>
+    <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline">
+        <property name="ap.cmd.line.internal" value=""/>
+    </target>
+    <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/>
+    <!--
+                ===================
+                COMPILATION SECTION
+                ===================
+            -->
+    <target name="-deps-jar-init" unless="built-jar.properties">
+        <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/>
+        <delete file="${built-jar.properties}" quiet="true"/>
+    </target>
+    <target if="already.built.jar.${basedir}" name="-warn-already-built-jar">
+        <echo level="warn" message="Cycle detected: UpidTK was already built"/>
+    </target>
+    <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps">
+        <mkdir dir="${build.dir}"/>
+        <touch file="${built-jar.properties}" verbose="false"/>
+        <property file="${built-jar.properties}" prefix="already.built.jar."/>
+        <antcall target="-warn-already-built-jar"/>
+        <propertyfile file="${built-jar.properties}">
+            <entry key="${basedir}" value=""/>
+        </propertyfile>
+        <antcall target="-maybe-call-dep">
+            <param name="call.built.properties" value="${built-jar.properties}"/>
+            <param location="${project.ToolKit}" name="call.subproject"/>
+            <param location="${project.ToolKit}/build.xml" name="call.script"/>
+            <param name="call.target" value="jar"/>
+            <param name="transfer.built-jar.properties" value="${built-jar.properties}"/>
+        </antcall>
+    </target>
+    <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
+    <target depends="init" name="-check-automatic-build">
+        <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/>
+    </target>
+    <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build">
+        <antcall target="clean"/>
+    </target>
+    <target depends="init,deps-jar" name="-pre-pre-compile">
+        <mkdir dir="${build.classes.dir}"/>
+    </target>
+    <target name="-pre-compile">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target if="do.depend.true" name="-compile-depend">
+        <pathconvert property="build.generated.subdirs">
+            <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+                <include name="*"/>
+            </dirset>
+        </pathconvert>
+        <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/>
+    </target>
+    <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile">
+        <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/>
+        <copy todir="${build.classes.dir}">
+            <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target if="has.persistence.xml" name="-copy-persistence-xml">
+        <mkdir dir="${build.classes.dir}/META-INF"/>
+        <copy todir="${build.classes.dir}/META-INF">
+            <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/>
+        </copy>
+    </target>
+    <target name="-post-compile">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/>
+    <target name="-pre-compile-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
+        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
+        <j2seproject3:force-recompile/>
+        <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" sourcepath="${src.dir}"/>
+    </target>
+    <target name="-post-compile-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/>
+    <!--
+                ====================
+                JAR BUILDING SECTION
+                ====================
+            -->
+    <target depends="init" name="-pre-pre-jar">
+        <dirname file="${dist.jar}" property="dist.jar.dir"/>
+        <mkdir dir="${dist.jar.dir}"/>
+    </target>
+    <target name="-pre-jar">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive" name="-do-jar-without-manifest" unless="manifest.available-mkdist.available">
+        <j2seproject1:jar/>
+    </target>
+    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available" name="-do-jar-with-manifest" unless="manifest.available+main.class-mkdist.available">
+        <j2seproject1:jar manifest="${manifest.file}"/>
+    </target>
+    <target depends="init,compile,-pre-pre-jar,-pre-jar" if="do.archive+manifest.available+main.class" name="-do-jar-with-mainclass" unless="manifest.available+main.class+mkdist.available">
+        <j2seproject1:jar manifest="${manifest.file}">
+            <j2seproject1:manifest>
+                <j2seproject1:attribute name="Main-Class" value="${main.class}"/>
+            </j2seproject1:manifest>
+        </j2seproject1:jar>
+        <echo level="info">To run this application from the command line without Ant, try:</echo>
+        <property location="${build.classes.dir}" name="build.classes.dir.resolved"/>
+        <property location="${dist.jar}" name="dist.jar.resolved"/>
+        <pathconvert property="run.classpath.with.dist.jar">
+            <path path="${run.classpath}"/>
+            <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/>
+        </pathconvert>
+        <echo level="info">java -cp "${run.classpath.with.dist.jar}" ${main.class}</echo>
+    </target>
+    <target depends="init" if="do.archive" name="-do-jar-with-libraries-create-manifest" unless="manifest.available">
+        <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
+        <touch file="${tmp.manifest.file}" verbose="false"/>
+    </target>
+    <target depends="init" if="do.archive+manifest.available" name="-do-jar-with-libraries-copy-manifest">
+        <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/>
+        <copy file="${manifest.file}" tofile="${tmp.manifest.file}"/>
+    </target>
+    <target depends="init,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest" if="do.archive+main.class.available" name="-do-jar-with-libraries-set-main">
+        <manifest file="${tmp.manifest.file}" mode="update">
+            <attribute name="Main-Class" value="${main.class}"/>
+        </manifest>
+    </target>
+    <target depends="init,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-with-libraries-set-splashscreen">
+        <basename file="${application.splash}" property="splashscreen.basename"/>
+        <mkdir dir="${build.classes.dir}/META-INF"/>
+        <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/>
+        <manifest file="${tmp.manifest.file}" mode="update">
+            <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/>
+        </manifest>
+    </target>
+    <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest,-do-jar-with-libraries-set-main,-do-jar-with-libraries-set-splashscreen" if="do.mkdist" name="-do-jar-with-libraries-pack">
+        <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
+        <echo level="info">To run this application from the command line without Ant, try:</echo>
+        <property location="${dist.jar}" name="dist.jar.resolved"/>
+        <echo level="info">java -jar "${dist.jar.resolved}"</echo>
+    </target>
+    <target depends="-do-jar-with-libraries-pack" if="do.archive" name="-do-jar-with-libraries-delete-manifest">
+        <delete>
+            <fileset file="${tmp.manifest.file}"/>
+        </delete>
+    </target>
+    <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-with-libraries-create-manifest,-do-jar-with-libraries-copy-manifest,-do-jar-with-libraries-set-main,-do-jar-with-libraries-set-splashscreen,-do-jar-with-libraries-pack,-do-jar-with-libraries-delete-manifest" name="-do-jar-with-libraries"/>
+    <target name="-post-jar">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-jar,-do-jar-with-manifest,-do-jar-without-manifest,-do-jar-with-mainclass,-do-jar-with-libraries,-post-jar" description="Build JAR." name="jar"/>
+    <!--
+                =================
+                EXECUTION SECTION
+                =================
+            -->
+    <target depends="init,compile" description="Run a main class." name="run">
+        <j2seproject1:java>
+            <customize>
+                <arg line="${application.args}"/>
+            </customize>
+        </j2seproject1:java>
+    </target>
+    <target name="-do-not-recompile">
+        <property name="javac.includes.binary" value=""/>
+    </target>
+    <target depends="init,compile-single" name="run-single">
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+        <j2seproject1:java classname="${run.class}"/>
+    </target>
+    <target depends="init,compile-test-single" name="run-test-with-main">
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+        <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/>
+    </target>
+    <!--
+                =================
+                DEBUGGING SECTION
+                =================
+            -->
+    <target depends="init" if="netbeans.home" name="-debug-start-debugger">
+        <j2seproject1:nbjpdastart name="${debug.class}"/>
+    </target>
+    <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test">
+        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/>
+    </target>
+    <target depends="init,compile" name="-debug-start-debuggee">
+        <j2seproject3:debug>
+            <customize>
+                <arg line="${application.args}"/>
+            </customize>
+        </j2seproject3:debug>
+    </target>
+    <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/>
+    <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto">
+        <j2seproject1:nbjpdastart stopclassname="${main.class}"/>
+    </target>
+    <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/>
+    <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single">
+        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
+        <j2seproject3:debug classname="${debug.class}"/>
+    </target>
+    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/>
+    <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test">
+        <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail>
+        <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/>
+    </target>
+    <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/>
+    <target depends="init" name="-pre-debug-fix">
+        <fail unless="fix.includes">Must set fix.includes</fail>
+        <property name="javac.includes" value="${fix.includes}.java"/>
+    </target>
+    <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix">
+        <j2seproject1:nbjpdareload/>
+    </target>
+    <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/>
+    <!--
+                =================
+                PROFILING SECTION
+                =================
+            -->
+    <!--
+                pre NB7.2 profiler integration
+            -->
+    <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72">
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <profile/>
+    </target>
+    <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72">
+        <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail>
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <profile classname="${profile.class}"/>
+    </target>
+    <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72">
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <profile classname="sun.applet.AppletViewer">
+            <customize>
+                <arg value="${applet.url}"/>
+            </customize>
+        </profile>
+    </target>
+    <target depends="profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
+        <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail>
+        <nbprofiledirect>
+            <classpath>
+                <path path="${run.test.classpath}"/>
+            </classpath>
+        </nbprofiledirect>
+        <junit dir="${profiler.info.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" showoutput="true">
+            <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/>
+            <jvmarg value="${profiler.info.jvmargs.agent}"/>
+            <jvmarg line="${profiler.info.jvmargs}"/>
+            <test name="${profile.class}"/>
+            <classpath>
+                <path path="${run.test.classpath}"/>
+            </classpath>
+            <syspropertyset>
+                <propertyref prefix="test-sys-prop."/>
+                <mapper from="test-sys-prop.*" to="*" type="glob"/>
+            </syspropertyset>
+            <formatter type="brief" usefile="false"/>
+            <formatter type="xml"/>
+        </junit>
+    </target>
+    <!--
+                end of pre NB72 profiling section
+            -->
+    <target if="netbeans.home" name="-profile-check">
+        <condition property="profiler.configured">
+            <or>
+                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/>
+                <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/>
+            </or>
+        </condition>
+    </target>
+    <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent">
+        <startprofiler/>
+        <antcall target="run"/>
+    </target>
+    <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent">
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+        <startprofiler/>
+        <antcall target="run-single"/>
+    </target>
+    <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/>
+    <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs">
+        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
+        <startprofiler/>
+        <antcall target="test-single"/>
+    </target>
+    <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main">
+        <fail unless="run.class">Must select one file in the IDE or set run.class</fail>
+        <startprofiler/>
+        <antcal target="run-test-with-main"/>
+    </target>
+    <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent">
+        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
+        <startprofiler/>
+        <antcall target="run-applet"/>
+    </target>
+    <!--
+                ===============
+                JAVADOC SECTION
+                ===============
+            -->
+    <target depends="init" if="have.sources" name="-javadoc-build">
+        <mkdir dir="${dist.javadoc.dir}"/>
+        <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}">
+            <and>
+                <isset property="endorsed.classpath.cmd.line.arg"/>
+                <not>
+                    <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/>
+                </not>
+            </and>
+        </condition>
+        <javadoc additionalparam="${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}">
+            <classpath>
+                <path path="${javac.classpath}"/>
+            </classpath>
+            <fileset dir="${src.dir}" excludes="*.java,${excludes}" includes="${includes}">
+                <filename name="**/*.java"/>
+            </fileset>
+            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+                <include name="**/*.java"/>
+                <exclude name="*.java"/>
+            </fileset>
+            <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/>
+        </javadoc>
+        <copy todir="${dist.javadoc.dir}">
+            <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}">
+                <filename name="**/doc-files/**"/>
+            </fileset>
+            <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false">
+                <include name="**/doc-files/**"/>
+            </fileset>
+        </copy>
+    </target>
+    <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview">
+        <nbbrowse file="${dist.javadoc.dir}/index.html"/>
+    </target>
+    <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/>
+    <!--
+                =========================
+                TEST COMPILATION SECTION
+                =========================
+            -->
+    <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test">
+        <mkdir dir="${build.test.classes.dir}"/>
+    </target>
+    <target name="-pre-compile-test">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target if="do.depend.true" name="-compile-test-depend">
+        <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/>
+    </target>
+    <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test">
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" srcdir="${test.src.dir}"/>
+        <copy todir="${build.test.classes.dir}">
+            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target name="-post-compile-test">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/>
+    <target name="-pre-compile-test-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single">
+        <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail>
+        <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"/>
+        <copy todir="${build.test.classes.dir}">
+            <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
+        </copy>
+    </target>
+    <target name="-post-compile-test-single">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/>
+    <!--
+                =======================
+                TEST EXECUTION SECTION
+                =======================
+            -->
+    <target depends="init" if="have.tests" name="-pre-test-run">
+        <mkdir dir="${build.test.results.dir}"/>
+    </target>
+    <target depends="init,compile-test,-pre-test-run" if="have.tests" name="-do-test-run">
+        <j2seproject3:test testincludes="**/*Test.java"/>
+    </target>
+    <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run">
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+    </target>
+    <target depends="init" if="have.tests" name="test-report"/>
+    <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/>
+    <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/>
+    <target depends="init" if="have.tests" name="-pre-test-run-single">
+        <mkdir dir="${build.test.results.dir}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single">
+        <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail>
+        <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single">
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/>
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method">
+        <fail unless="test.class">Must select some files in the IDE or set test.class</fail>
+        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
+        <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method">
+        <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/>
+    <!--
+                =======================
+                TEST DEBUGGING SECTION
+                =======================
+            -->
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test">
+        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
+        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/>
+    </target>
+    <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method">
+        <fail unless="test.class">Must select one file in the IDE or set test.class</fail>
+        <fail unless="test.method">Must select some method in the IDE or set test.method</fail>
+        <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/>
+    </target>
+    <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test">
+        <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/>
+    </target>
+    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/>
+    <target depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/>
+    <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test">
+        <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
+    </target>
+    <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/>
+    <!--
+                =========================
+                APPLET EXECUTION SECTION
+                =========================
+            -->
+    <target depends="init,compile-single" name="run-applet">
+        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
+        <j2seproject1:java classname="sun.applet.AppletViewer">
+            <customize>
+                <arg value="${applet.url}"/>
+            </customize>
+        </j2seproject1:java>
+    </target>
+    <!--
+                =========================
+                APPLET DEBUGGING  SECTION
+                =========================
+            -->
+    <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet">
+        <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail>
+        <j2seproject3:debug classname="sun.applet.AppletViewer">
+            <customize>
+                <arg value="${applet.url}"/>
+            </customize>
+        </j2seproject3:debug>
+    </target>
+    <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/>
+    <!--
+                ===============
+                CLEANUP SECTION
+                ===============
+            -->
+    <target name="-deps-clean-init" unless="built-clean.properties">
+        <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/>
+        <delete file="${built-clean.properties}" quiet="true"/>
+    </target>
+    <target if="already.built.clean.${basedir}" name="-warn-already-built-clean">
+        <echo level="warn" message="Cycle detected: UpidTK was already built"/>
+    </target>
+    <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps">
+        <mkdir dir="${build.dir}"/>
+        <touch file="${built-clean.properties}" verbose="false"/>
+        <property file="${built-clean.properties}" prefix="already.built.clean."/>
+        <antcall target="-warn-already-built-clean"/>
+        <propertyfile file="${built-clean.properties}">
+            <entry key="${basedir}" value=""/>
+        </propertyfile>
+        <antcall target="-maybe-call-dep">
+            <param name="call.built.properties" value="${built-clean.properties}"/>
+            <param location="${project.ToolKit}" name="call.subproject"/>
+            <param location="${project.ToolKit}/build.xml" name="call.script"/>
+            <param name="call.target" value="clean"/>
+            <param name="transfer.built-clean.properties" value="${built-clean.properties}"/>
+        </antcall>
+    </target>
+    <target depends="init" name="-do-clean">
+        <delete dir="${build.dir}"/>
+        <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/>
+    </target>
+    <target name="-post-clean">
+        <!-- Empty placeholder for easier customization. -->
+        <!-- You can override this target in the ../build.xml file. -->
+    </target>
+    <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/>
+    <target name="-check-call-dep">
+        <property file="${call.built.properties}" prefix="already.built."/>
+        <condition property="should.call.dep">
+            <and>
+                <not>
+                    <isset property="already.built.${call.subproject}"/>
+                </not>
+                <available file="${call.script}"/>
+            </and>
+        </condition>
+    </target>
+    <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep">
+        <ant antfile="${call.script}" inheritall="false" target="${call.target}">
+            <propertyset>
+                <propertyref prefix="transfer."/>
+                <mapper from="transfer.*" to="*" type="glob"/>
+            </propertyset>
+        </ant>
+    </target>
+</project>

+ 8 - 0
UpidTK/nbproject/genfiles.properties

@@ -0,0 +1,8 @@
+build.xml.data.CRC32=c7ded332
+build.xml.script.CRC32=d3a07a3f
+build.xml.stylesheet.CRC32=28e38971@1.50.3.46
+# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
+# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
+nbproject/build-impl.xml.data.CRC32=c7ded332
+nbproject/build-impl.xml.script.CRC32=5e14cfa3
+nbproject/build-impl.xml.stylesheet.CRC32=c6d2a60f@1.56.1.46

+ 82 - 0
UpidTK/nbproject/project.properties

@@ -0,0 +1,82 @@
+annotation.processing.enabled=true
+annotation.processing.enabled.in.editor=false
+annotation.processing.processors.list=
+annotation.processing.run.all.processors=true
+annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
+application.title=UpidTK
+application.vendor=LH
+build.classes.dir=${build.dir}/classes
+build.classes.excludes=**/*.java,**/*.form
+# This directory is removed when the project is cleaned:
+build.dir=build
+build.generated.dir=${build.dir}/generated
+build.generated.sources.dir=${build.dir}/generated-sources
+# Only compile against the classpath explicitly listed here:
+build.sysclasspath=ignore
+build.test.classes.dir=${build.dir}/test/classes
+build.test.results.dir=${build.dir}/test/results
+# Uncomment to specify the preferred debugger connection transport:
+#debug.transport=dt_socket
+debug.classpath=\
+    ${run.classpath}
+debug.test.classpath=\
+    ${run.test.classpath}
+# This directory is removed when the project is cleaned:
+dist.dir=dist
+dist.jar=${dist.dir}/UpidTK.jar
+dist.javadoc.dir=${dist.dir}/javadoc
+endorsed.classpath=
+excludes=
+file.reference.commons-exec-1.1.jar=C:\\Users\\LH\\.m2\\repository\\org\\apache\\commons\\commons-exec\\1.1\\commons-exec-1.1.jar
+file.reference.commons-io-2.3.jar=C:\\Users\\LH\\.m2\\repository\\commons-io\\commons-io\\2.3\\commons-io-2.3.jar
+file.reference.mysql-connector-java-5.1.21-bin.jar=C:\\Users\\LH\\Documents\\libs\\mysql-connector-java-5.1.21-bin.jar
+includes=**
+jar.compress=false
+javac.classpath=\
+    ${reference.ToolKit.jar}:\
+    ${file.reference.commons-exec-1.1.jar}:\
+    ${file.reference.commons-io-2.3.jar}:\
+    ${file.reference.mysql-connector-java-5.1.21-bin.jar}
+# Space-separated list of extra javac options
+javac.compilerargs=
+javac.deprecation=false
+javac.processorpath=\
+    ${javac.classpath}
+javac.source=1.7
+javac.target=1.7
+javac.test.classpath=\
+    ${javac.classpath}:\
+    ${build.classes.dir}
+javac.test.processorpath=\
+    ${javac.test.classpath}
+javadoc.additionalparam=
+javadoc.author=false
+javadoc.encoding=${source.encoding}
+javadoc.noindex=false
+javadoc.nonavbar=false
+javadoc.notree=false
+javadoc.private=false
+javadoc.splitindex=true
+javadoc.use=true
+javadoc.version=false
+javadoc.windowtitle=
+main.class=de.nplusc.upidgen.Ifatzeh
+manifest.file=manifest.mf
+meta.inf.dir=${src.dir}/META-INF
+mkdist.disabled=false
+platform.active=default_platform
+project.ToolKit=../ToolKit
+reference.ToolKit.jar=${project.ToolKit}/dist/ToolKit.jar
+run.classpath=\
+    ${javac.classpath}:\
+    ${build.classes.dir}
+# Space-separated list of JVM arguments used when running the project
+# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value
+# or test-sys-prop.name=value to set system properties for unit tests):
+run.jvmargs=
+run.test.classpath=\
+    ${javac.test.classpath}:\
+    ${build.test.classes.dir}
+source.encoding=UTF-8
+src.dir=src
+test.src.dir=test

+ 25 - 0
UpidTK/nbproject/project.xml

@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://www.netbeans.org/ns/project/1">
+    <type>org.netbeans.modules.java.j2seproject</type>
+    <configuration>
+        <data xmlns="http://www.netbeans.org/ns/j2se-project/3">
+            <name>UpidTK</name>
+            <source-roots>
+                <root id="src.dir"/>
+            </source-roots>
+            <test-roots>
+                <root id="test.src.dir"/>
+            </test-roots>
+        </data>
+        <references xmlns="http://www.netbeans.org/ns/ant-project-references/1">
+            <reference>
+                <foreign-project>ToolKit</foreign-project>
+                <artifact-type>jar</artifact-type>
+                <script>build.xml</script>
+                <target>jar</target>
+                <clean-target>clean</clean-target>
+                <id>jar</id>
+            </reference>
+        </references>
+    </configuration>
+</project>

+ 335 - 0
UpidTK/src/ToolsSet.java-da

@@ -0,0 +1,335 @@
+
+//import com.sun.xml.internal.bind.v2.runtime.unmarshaller.XsiNilLoader; //Woher kam enn der Scheissdreck???
+import java.security.MessageDigest;
+import java.util.HashMap;
+import javax.swing.*;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+
+public class ToolsSet 
+{
+    private static boolean ContState;
+    static JDialog d = new JDialog();
+    public static final String ALPHABET = "abcdefghijklmnopqrstuvwxyz";
+    public static String getSHAString(String s)
+    {
+        try
+        {
+            MessageDigest sha = MessageDigest.getInstance("SHA");
+            @SuppressWarnings("StringBufferMayBeStringBuilder")
+            StringBuffer t = new StringBuffer();
+            byte[] digest = sha.digest(s.getBytes());
+            for (byte b : digest)
+            {
+                //System.out.printf("%02x", b);
+                int val = ((int) b) & 0xff;
+                if (val < 16) t.append("0");
+                t.append(Integer.toHexString(val));
+            }
+            //System.out.println();
+            return t.toString();
+        }
+        catch (Exception e)
+        {
+            return null;
+        }
+    }
+    
+    public static int[] lettersToInt(String ip)
+    {
+        ip = ip.toLowerCase();
+        char[]it = ip.toCharArray();
+        int[] r = new int[it.length];
+        for (int i = 0;i<r.length;i++) 
+        {
+            r[i] = (int) it[i];
+        }
+        return r;
+    }
+    public static int addIntsTogether(int[] i)
+    {
+       int t = 1;
+        for (int X : i) 
+        {
+            t*=X;
+        }
+    return t;
+    }
+    public static int addIntsTogether(HashMap<String,String>m,boolean ints)
+    {
+        //boolean ints = !noints;
+        String[] mk;
+        Object[] mk2 = m.keySet().toArray();
+        mk = new String[mk2.length];
+        for(int i=0;i<mk.length;i++)
+        {
+            String s = "";
+            //s.toString();
+            mk[i] = mk2[i].toString();
+        }
+        int t = 1;
+        for (String s : mk) 
+        {
+            if(ints==true)
+            {
+                t*=Integer.valueOf(m.get(s));
+            }
+            else
+            {
+                int t2 = 0;
+                int[] itmp = lettersToInt(m.get(s));
+                for (int i : itmp) 
+                {
+                    t2+=i;
+                }
+                t+=t2;
+            }
+        }
+        return t;
+    }
+    public static String stringAdd(String s1,String s2)
+    {
+        char[] ca1 = s1.toLowerCase().toCharArray();
+        char[] ca2 = s2.toLowerCase().toCharArray();
+        int [] ci1 = new int[ca1.length];
+        int [] ci2 = new int[ca2.length];
+        
+        String t;
+        for (int i=0;i<ca1.length;i++)
+        {
+            try
+            {
+                ci1[i] = Integer.valueOf(Character.toString(ca1[i]));
+            }
+            catch(Exception e)
+            {
+            t = Character.toString(ca1[i]);
+            ci1[i] = ALPHABET.indexOf(t)+1;
+            }
+        }
+        for (int i=0;i<ca2.length;i++)
+        {
+            try
+            {
+                ci2[i] = Integer.valueOf(Character.toString(ca2[i]));
+            }
+            catch(Exception e)
+            {
+            t = Character.toString(ca2[i]);
+            ci2[i] = ALPHABET.indexOf(t)+1;
+            }
+        }
+        int l = ci1.length;
+        if(ci1.length<ci2.length)
+        {
+            l = ci2.length;
+        }
+        int[] op = new int [l];
+        int i1,i2,i3;
+        for(int i=0;i<l;i++)
+        {
+            try
+            {
+                i1 = ci1[i];
+            }
+            catch (Exception e)
+            {
+                i1=0;
+            }
+            try
+            {
+                i2 = ci2[i];
+            }
+            catch (Exception e)
+            {
+                i2=0;
+            }
+            i3 = i1+i1;
+            if(i3>26)
+            {
+                i3-=26;
+            }
+            op[i] = i3;
+        }
+        
+        return backString(op);
+    }
+    public static String backString(int[] ia)
+    {
+        int l = ia.length,i1;
+        String[] r1 = new String[l];
+        String r = "";
+        for(int i = 0;i<l;i++)
+        {
+            i1=ia[i]-1;
+            if(i1==-1)
+            {
+                i1++;
+            }
+            r1[i] = Character.toString(ALPHABET.charAt(i1));
+        }
+        for (String s : r1) {
+            r +=s;
+        }
+        
+        
+        
+        return r;
+    }
+    public static String stringFold(String s,int l,int rec)//halbiert Strings und addiert die Hälften
+    {
+        int l1 = s.length()/2;//,l2;
+        String sh1,sh2,so1;
+        //int l2=l1+1-1;//Neuen Wet erzeugen!!
+        //l2=l1*2
+        if((l1*2)==s.length()-1)
+        {
+            l1++;
+        }
+        sh1 = s.substring(0,l1++);
+        sh2 = s.substring(l1++);
+        so1 = stringAdd(sh1,sh2);
+        if(so1.length()>l&&rec>0)
+        {
+            so1 = stringFold(so1,l,rec--);
+        }
+        
+        return so1;
+    }
+    
+    public static String stringFold(String s,int l)
+    {
+        return stringFold(s,l,30);
+    }
+    
+    public static boolean dlg(boolean mode,String MSGLine1,String MSGLine2)
+    {
+	JPanel p = new JPanel();
+		javax.swing.JButton btnYes = new javax.swing.JButton();
+	javax.swing.JButton btnNo = new javax.swing.JButton();
+	JLabel lblMSG = new JLabel();
+	JLabel lblMSG2 = new JLabel();
+
+
+
+        d.setModal(true);
+	if(mode==true)
+        {
+	    //Ausgeblendet da nur Fenster-Layout
+	    // <editor-fold defaultstate="collapsed" desc="Layout-Code">
+       btnNo.setText("Abbrechen");
+        btnNo.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnNoActionPerformed(evt);
+            }
+        });
+
+        btnYes.setText("Fortfahren");
+        btnYes.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnYesActionPerformed(evt);
+            }
+        });
+
+        lblMSG.setText(MSGLine1);
+
+        lblMSG2.setText(MSGLine2);
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(p);
+        p.setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addGap(36, 36, 36)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(lblMSG, javax.swing.GroupLayout.PREFERRED_SIZE, 258, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addGroup(layout.createSequentialGroup()
+                        .addComponent(btnYes)
+                        .addGap(18, 18, 18)
+                        .addComponent(btnNo))
+                    .addGroup(layout.createSequentialGroup()
+                        .addGap(40, 40, 40)
+                        .addComponent(lblMSG2)))
+                .addContainerGap(63, Short.MAX_VALUE))
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(lblMSG, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(18, 18, 18)
+                .addComponent(lblMSG2)
+                .addGap(18, 18, 18)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(btnYes)
+                    .addComponent(btnNo))
+                .addContainerGap(71, Short.MAX_VALUE))
+        );
+	// </editor-fold>
+
+	    //Auskommentierter Fail!
+	    // <editor-fold defaultstate="collapsed" desc="FailTry">
+/*javax.swing.JButton btnYes = new javax.swing.JButton();
+	    btnYes.addActionListener
+	    (
+	    new java.awt.event.ActionListener()
+	    {
+	    public void actionPerformed(java.awt.event.ActionEvent evt)
+	    {
+	    btnCTNActionPerformed(evt);
+	    }
+	    }
+	    );
+	    javax.swing.JButton btnNo = new javax.swing.JButton();
+	    btnNo.addActionListener
+	    (
+	    new java.awt.event.ActionListener()
+	    {
+	    public void actionPerformed(java.awt.event.ActionEvent evt)
+	    {
+	    btnSTPActionPerformed(evt);
+	    }
+	    }
+	    );
+	    btnYes.setText("Fortsetzen");
+	    btnNo.setText("Abbrechen");*/
+	    //d.add(new JButton());// </editor-fold>
+	    
+	    
+	    //p.add(btnYes);
+	    //p.add(btnNo);
+	    d.add(p);
+
+	    d.setSize(p.getPreferredSize());
+	    d.setVisible( true );
+        }
+	else
+	{
+	    //TODO working.dialog
+	    return true;
+	}
+	return ContState;
+    }
+        private static void btnYesActionPerformed(java.awt.event.ActionEvent evt)
+    {
+	ContState = true;
+	hideDialog();
+    }
+    private static void btnNoActionPerformed(java.awt.event.ActionEvent evt)
+    {
+	ContState = false;
+	hideDialog();
+    }
+    public static void hideDialog()
+    {
+    d.setVisible(false);
+    }
+}

+ 417 - 0
UpidTK/src/de/nplusc/upidgen/ArightsCatEditor.form

@@ -0,0 +1,417 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Group type="102" alignment="0" attributes="0">
+                      <Component id="jScrollPane1" pref="950" max="32767" attributes="0"/>
+                      <EmptySpace max="-2" attributes="0"/>
+                  </Group>
+                  <Group type="102" alignment="0" attributes="0">
+                      <Component id="fetch" min="-2" pref="146" max="-2" attributes="0"/>
+                      <EmptySpace min="-2" pref="167" max="-2" attributes="0"/>
+                      <Component id="flagSwitch" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace max="32767" attributes="0"/>
+                      <Component id="btnRet" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace min="-2" pref="55" max="-2" attributes="0"/>
+                  </Group>
+              </Group>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" alignment="1" attributes="0">
+              <EmptySpace max="32767" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="fetch" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="flagSwitch" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="btnRet" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+              <Component id="jScrollPane1" min="-2" pref="345" max="-2" attributes="0"/>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JTable" name="tblCategmatrix">
+          <Properties>
+            <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor" postCode="tblCategmatrix.setColumnModel(new HidableTableColumnModel(tblCategmatrix.getColumnModel()));">
+              <Table columnCount="50" rowCount="0">
+                <Column editable="false" title="Description" type="java.lang.String"/>
+                <Column editable="false" title="Key" type="java.lang.String"/>
+                <Column editable="false" title="Title 3" type="java.lang.String"/>
+                <Column editable="false" title="Title 4" type="java.lang.String"/>
+                <Column editable="false" title="Title 5" type="java.lang.String"/>
+                <Column editable="false" title="Title 6" type="java.lang.String"/>
+                <Column editable="false" title="Title 7" type="java.lang.String"/>
+                <Column editable="false" title="Title 8" type="java.lang.String"/>
+                <Column editable="false" title="Title 9" type="java.lang.String"/>
+                <Column editable="false" title="Title 10" type="java.lang.String"/>
+                <Column editable="false" title="Title 11" type="java.lang.String"/>
+                <Column editable="false" title="Title 12" type="java.lang.String"/>
+                <Column editable="false" title="Title 13" type="java.lang.String"/>
+                <Column editable="false" title="Title 14" type="java.lang.String"/>
+                <Column editable="false" title="Title 15" type="java.lang.String"/>
+                <Column editable="false" title="Title 16" type="java.lang.String"/>
+                <Column editable="false" title="Title 17" type="java.lang.String"/>
+                <Column editable="false" title="Title 18" type="java.lang.String"/>
+                <Column editable="false" title="Title 19" type="java.lang.String"/>
+                <Column editable="false" title="Title 20" type="java.lang.String"/>
+                <Column editable="false" title="Title 21" type="java.lang.String"/>
+                <Column editable="false" title="Title 22" type="java.lang.String"/>
+                <Column editable="false" title="Title 23" type="java.lang.String"/>
+                <Column editable="false" title="Title 24" type="java.lang.String"/>
+                <Column editable="false" title="Title 25" type="java.lang.String"/>
+                <Column editable="false" title="Title 26" type="java.lang.String"/>
+                <Column editable="false" title="Title 27" type="java.lang.String"/>
+                <Column editable="false" title="Title 28" type="java.lang.String"/>
+                <Column editable="false" title="Title 29" type="java.lang.String"/>
+                <Column editable="false" title="Title 30" type="java.lang.String"/>
+                <Column editable="false" title="Title 31" type="java.lang.String"/>
+                <Column editable="false" title="Title 32" type="java.lang.String"/>
+                <Column editable="false" title="Title 33" type="java.lang.String"/>
+                <Column editable="false" title="Title 34" type="java.lang.String"/>
+                <Column editable="false" title="Title 35" type="java.lang.String"/>
+                <Column editable="false" title="Title 36" type="java.lang.String"/>
+                <Column editable="false" title="Title 37" type="java.lang.String"/>
+                <Column editable="false" title="Title 38" type="java.lang.String"/>
+                <Column editable="false" title="Title 39" type="java.lang.String"/>
+                <Column editable="false" title="Title 40" type="java.lang.String"/>
+                <Column editable="false" title="Title 41" type="java.lang.String"/>
+                <Column editable="false" title="Title 42" type="java.lang.String"/>
+                <Column editable="false" title="Title 43" type="java.lang.String"/>
+                <Column editable="false" title="Title 44" type="java.lang.String"/>
+                <Column editable="false" title="Title 45" type="java.lang.String"/>
+                <Column editable="false" title="Title 46" type="java.lang.String"/>
+                <Column editable="false" title="Title 47" type="java.lang.String"/>
+                <Column editable="false" title="Title 48" type="java.lang.String"/>
+                <Column editable="false" title="Title 49" type="java.lang.String"/>
+                <Column editable="false" title="Title 50" type="java.lang.String"/>
+              </Table>
+            </Property>
+            <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor">
+              <TableColumnModel selectionModel="0">
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+              </TableColumnModel>
+            </Property>
+            <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor">
+              <TableHeader reorderingAllowed="false" resizingAllowed="true"/>
+            </Property>
+          </Properties>
+          <Events>
+            <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="tblCategmatrixMouseClicked"/>
+          </Events>
+          <AuxValues>
+            <AuxValue name="JavaCodeGenerator_InitCodePre" type="java.lang.String" value="DefaultTableModel m = new javax.swing.table.DefaultTableModel(&#xa;    new Object [2][50],&#xa;    new String [] {&#xa;        &quot;KEy descrip&quot;, &quot;Key&quot;, &quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;,&quot;&quot;&#xa;    }&#xa;) {&#xa;    Class[] types = new Class [] {&#xa;        java.lang.String.class, java.lang.String.class, java.lang.Integer.class&#xa;    };&#xa;&#xa;    public Class getColumnClass(int columnIndex) {&#xa;        return types [columnIndex];&#xa;    }&#xa;};&#xa;        TableColumnModel m2 =new DefaultTableColumnModel();&#xa;    for(int i=0;i&lt;50;i++)&#xa;    {&#xa;        int w = 200;&#xa;        if(i&gt;1) w = 30;&#xa;        m2.addColumn(new TableColumn(i,w));&#xa;    }"/>
+          </AuxValues>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Component class="javax.swing.JButton" name="fetch">
+      <Properties>
+        <Property name="text" type="java.lang.String" value=".fetch()"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="fetchActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JToggleButton" name="flagSwitch">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Flag State:Disabled"/>
+        <Property name="enabled" type="boolean" value="false"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="flagSwitchActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="btnRet">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Back to Select"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnRetActionPerformed"/>
+      </Events>
+    </Component>
+  </SubComponents>
+</Form>

+ 367 - 0
UpidTK/src/de/nplusc/upidgen/ArightsCatEditor.java

@@ -0,0 +1,367 @@
+package de.nplusc.upidgen;
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.HidableTableColumnModel;
+import de.nplusc.izc.tools.baseTools.Tools;
+import javax.swing.JTable;
+import javax.swing.UIManager;
+import javax.swing.table.DefaultTableColumnModel;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableColumn;
+import javax.swing.table.TableColumnModel;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+public class ArightsCatEditor extends javax.swing.JFrame
+{
+
+    /**
+     * Creates new form ArightsCatEditor
+     */
+    HidableTableColumnModel tm = null;
+    private static DBWriter dbc = PublicStorage.dbc;
+    public ArightsCatEditor()
+    {
+                                try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        initComponents();
+        
+        tm = (HidableTableColumnModel)tblCategmatrix.getColumnModel();
+        tblCategmatrix.setAutoResizeMode( JTable.AUTO_RESIZE_OFF );
+        TableColumnModel m = tblCategmatrix.getColumnModel();
+        for (int i = 2; i < 50; i++)
+        {
+            tm.setColumnVisible(i, false);
+            /*TableColumn c = m.getColumn(i);
+            c.setPreferredWidth(1);
+            c.setHeaderValue("");
+           // c.setWidth(0);
+            //c.setMaxWidth(0);*/
+            
+        }
+        
+        /*
+        insertColumn("Test");
+        insertColumn("Test2");
+        
+        insertColumn("Test3");
+        insertColumn("Test4");
+        insertRow();
+        insertRow();*/
+        
+    }
+
+    /**
+     * This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        jScrollPane1 = new javax.swing.JScrollPane();
+        tblCategmatrix = new javax.swing.JTable();
+        fetch = new javax.swing.JButton();
+        flagSwitch = new javax.swing.JToggleButton();
+        btnRet = new javax.swing.JButton();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+
+        DefaultTableModel m = new javax.swing.table.DefaultTableModel(
+            new Object [2][50],
+            new String [] {
+                "KEy descrip", "Key", "","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""
+            }
+        ) {
+            Class[] types = new Class [] {
+                java.lang.String.class, java.lang.String.class, java.lang.Integer.class
+            };
+
+            public Class getColumnClass(int columnIndex) {
+                return types [columnIndex];
+            }
+        };
+        TableColumnModel m2 =new DefaultTableColumnModel();
+        for(int i=0;i<50;i++)
+        {
+            int w = 200;
+            if(i>1) w = 30;
+            m2.addColumn(new TableColumn(i,w));
+        }
+        tblCategmatrix.setModel(new javax.swing.table.DefaultTableModel(
+            new Object [][] {
+
+            },
+            new String [] {
+                "Description", "Key", "Title 3", "Title 4", "Title 5", "Title 6", "Title 7", "Title 8", "Title 9", "Title 10", "Title 11", "Title 12", "Title 13", "Title 14", "Title 15", "Title 16", "Title 17", "Title 18", "Title 19", "Title 20", "Title 21", "Title 22", "Title 23", "Title 24", "Title 25", "Title 26", "Title 27", "Title 28", "Title 29", "Title 30", "Title 31", "Title 32", "Title 33", "Title 34", "Title 35", "Title 36", "Title 37", "Title 38", "Title 39", "Title 40", "Title 41", "Title 42", "Title 43", "Title 44", "Title 45", "Title 46", "Title 47", "Title 48", "Title 49", "Title 50"
+            }
+        ) {
+            Class[] types = new Class [] {
+                java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
+            };
+            boolean[] canEdit = new boolean [] {
+                false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false
+            };
+
+            public Class getColumnClass(int columnIndex) {
+                return types [columnIndex];
+            }
+
+            public boolean isCellEditable(int rowIndex, int columnIndex) {
+                return canEdit [columnIndex];
+            }
+        });
+        tblCategmatrix.setColumnModel(new HidableTableColumnModel(tblCategmatrix.getColumnModel()));
+        tblCategmatrix.getTableHeader().setReorderingAllowed(false);
+        tblCategmatrix.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                tblCategmatrixMouseClicked(evt);
+            }
+        });
+        jScrollPane1.setViewportView(tblCategmatrix);
+
+        fetch.setText(".fetch()");
+        fetch.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                fetchActionPerformed(evt);
+            }
+        });
+
+        flagSwitch.setText("Flag State:Disabled");
+        flagSwitch.setEnabled(false);
+        flagSwitch.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                flagSwitchActionPerformed(evt);
+            }
+        });
+
+        btnRet.setText("Back to Select");
+        btnRet.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnRetActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 950, Short.MAX_VALUE)
+                        .addContainerGap())
+                    .addGroup(layout.createSequentialGroup()
+                        .addComponent(fetch, javax.swing.GroupLayout.PREFERRED_SIZE, 146, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(167, 167, 167)
+                        .addComponent(flagSwitch)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(btnRet)
+                        .addGap(55, 55, 55))))
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(fetch)
+                    .addComponent(flagSwitch)
+                    .addComponent(btnRet))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 345, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap())
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    private void fetchActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_fetchActionPerformed
+    {//GEN-HEADEREND:event_fetchActionPerformed
+        fetch();
+    }//GEN-LAST:event_fetchActionPerformed
+
+    
+    private void tblCategmatrixMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_tblCategmatrixMouseClicked
+    {//GEN-HEADEREND:event_tblCategmatrixMouseClicked
+        int y = tblCategmatrix.getSelectedColumn();
+        int x = tblCategmatrix.getSelectedRow();
+        boolean sel = false;
+        try{
+        if(tblCategmatrix.getModel().getValueAt(x, y).equals("X"))
+        {
+            flagSwitch.setSelected(true);
+            flagSwitch.setText("Flag State:Enabled");
+            sel=true;
+        }
+        else throw new Exception();
+        }
+        catch(Exception e)
+        {
+            flagSwitch.setSelected(false);
+            flagSwitch.setText("Flag State:Disabled");
+        }
+        if(evt.getClickCount()==2)
+        toggleFlag(sel);
+    }//GEN-LAST:event_tblCategmatrixMouseClicked
+
+    private void flagSwitchActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_flagSwitchActionPerformed
+    {//GEN-HEADEREND:event_flagSwitchActionPerformed
+
+    }//GEN-LAST:event_flagSwitchActionPerformed
+
+    private void btnRetActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnRetActionPerformed
+    {//GEN-HEADEREND:event_btnRetActionPerformed
+        Ifatzeh.sel.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_btnRetActionPerformed
+
+    public void toggleFlag(boolean sel)
+    {
+        int y = tblCategmatrix.getSelectedColumn()-1;//2 nch links udn das Offset des Indexes in DB
+        int x = tblCategmatrix.getSelectedRow()+1; //Offset des idxes in DB
+        if(flagSwitch.isSelected()) 
+            disableFlag(x,y);
+        else
+            enableFlag(x,y);
+        
+        fetch();
+    }
+    
+    
+    public void enableFlag(int flagKey,int catKey)
+    {
+         dbc.write("Insert into FlagCat values(null,"+flagKey+","+catKey+")");
+    }
+    public void disableFlag(int flagKey,int catKey)
+    {
+        dbc.write("DELETE FROM `upidtk`.`flagcat` WHERE FlagKey="+flagKey+" AND CatID = "+catKey);
+    }
+    
+    boolean firstrun = true;
+    public void fetch()
+    {
+        for (int i = 0; i < 50; i++)
+        {
+            for (int j = 0; j < rows; j++)
+            {
+                insertValueToTable("",j,i);
+                
+            }
+            
+        }
+        if(firstrun)
+        {
+        insertRow();
+        insertRow();
+        firstrun=false;
+        }
+        String[][] FlagDefine = dbc.queryTable("Select * from flag_descriptor ORder by Flag_key",3);
+        String[][] CatDefine = dbc.queryTable("Select * from category",2);
+        String[][] Linkage = dbc.queryTable("Select * from flagcat",3);
+        for(int i=0;i<FlagDefine.length;i++)//FlagListe erzeuchen
+        {
+
+            insertValueToTable(FlagDefine[i][2],i,0);
+            insertValueToTable(FlagDefine[i][1],i,1);
+            if(i+1>=rows&&i+1<FlagDefine.length)
+            {
+                insertRow();
+            }
+        }
+        killColumnsFrom(2);
+        for (int i = 0; i < CatDefine.length; i++)
+        {
+                insertColumn(CatDefine[i][1]);
+        }
+        for (int i = 0; i < Linkage.length; i++)
+        {
+            String[] link = Linkage[i];
+            Tools.DebugHelperPrint(link[0]+"|"+link[1]+"|"+link[2], true, "UpidTK.enableDebug");
+            insertValueToTable("X",Integer.valueOf(link[1])-1,Integer.valueOf(link[2])+1);
+            
+        }
+    }
+    
+    public void killColumnsFrom(int idx)
+    {
+        cols=idx;
+        for (int i = idx; i < 50; i++)
+        {
+            tm.setColumnVisible(i, false);
+        }
+    }
+    int cols = 2;
+    public void insertColumn(String tit)
+    {
+        tm.setColumnVisible(cols, true);
+        
+        tm.getColumn(cols).setHeaderValue(tit);
+                cols++;
+        Tools.DebugHelperPrint("AddCol", true, "UpidTK.enableDebug");
+        
+        // HACkmit unsichtbaren Reservesalten :-)
+        
+       //TableColumn column = new TableColumn();
+    
+    }
+    
+    public void insertValueToTable(String val,int row,int col)
+    {
+        DefaultTableModel m = (DefaultTableModel)tblCategmatrix.getModel();
+        m.setValueAt(val, row, col);
+    }
+    
+    
+    int rows=0;
+    public void insertRow()
+    {
+        rows++;
+        Tools.DebugHelperPrint("AddRow", true, "UpidTK.enableDebug");
+       ((DefaultTableModel)tblCategmatrix.getModel()).addRow(new String[50]);//nötig da unsivtbare ZEllen auch vorhanden sonst npx!!!!!!!!
+       ((DefaultTableModel)tblCategmatrix.getModel()).setRowCount(rows);
+    }
+    /**
+     * @param args the command line arguments
+     */
+    public static void main(String args[])
+    {
+                        try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        /*
+         * Create and display the form
+         */
+        java.awt.EventQueue.invokeLater(new Runnable()
+        {
+
+            @Override
+            public void run()
+            {
+                new ArightsCatEditor().setVisible(true);
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.JButton btnRet;
+    private javax.swing.JButton fetch;
+    private javax.swing.JToggleButton flagSwitch;
+    private javax.swing.JScrollPane jScrollPane1;
+    private javax.swing.JTable tblCategmatrix;
+    // End of variables declaration//GEN-END:variables
+}

+ 259 - 0
UpidTK/src/de/nplusc/upidgen/DependencyManager.form

@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.3" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                  <Group type="102" attributes="0">
+                      <Component id="refresh" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace max="-2" attributes="0"/>
+                      <Component id="toMainList" min="-2" max="-2" attributes="0"/>
+                  </Group>
+                  <Component id="jScrollPane1" pref="0" max="32767" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+              <Component id="jSeparator1" min="-2" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="1" attributes="0">
+                  <Group type="102" alignment="1" attributes="0">
+                      <EmptySpace type="unrelated" max="32767" attributes="0"/>
+                      <Component id="jSeparator3" min="-2" pref="1007" max="-2" attributes="0"/>
+                  </Group>
+                  <Group type="102" alignment="1" attributes="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <Component id="addDependency" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace min="-2" pref="29" max="-2" attributes="0"/>
+                              <Component id="addalternateDep" min="-2" max="-2" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                              <Component id="jScrollPane3" min="-2" pref="544" max="-2" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <EmptySpace min="-2" pref="115" max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" attributes="0">
+                                      <Component id="cxFin" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
+                                      <Component id="cxMultiresolve" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+                                      <Component id="cxForceRes" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Component id="jLabel1" min="-2" pref="376" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                      </Group>
+                      <EmptySpace max="32767" attributes="0"/>
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <Component id="jSeparator2" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="jScrollPane2" min="-2" pref="195" max="-2" attributes="0"/>
+                          </Group>
+                          <Component id="toMain" alignment="1" min="-2" pref="102" max="-2" attributes="0"/>
+                      </Group>
+                      <EmptySpace max="-2" attributes="0"/>
+                  </Group>
+              </Group>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Component id="jSeparator1" alignment="0" max="32767" attributes="0"/>
+          <Group type="102" alignment="1" attributes="0">
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="toMain" alignment="3" max="32767" attributes="0"/>
+                  <Component id="addDependency" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="addalternateDep" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace type="separate" max="-2" attributes="0"/>
+              <Component id="jSeparator3" min="-2" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Group type="102" attributes="0">
+                      <EmptySpace max="-2" attributes="0"/>
+                      <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                          <Component id="jScrollPane2" pref="383" max="32767" attributes="0"/>
+                          <Component id="jSeparator2" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                  <Group type="102" alignment="0" attributes="0">
+                      <EmptySpace min="-2" pref="74" max="-2" attributes="0"/>
+                      <Group type="103" groupAlignment="3" attributes="0">
+                          <Component id="cxFin" alignment="3" min="-2" max="-2" attributes="0"/>
+                          <Component id="cxMultiresolve" alignment="3" min="-2" max="-2" attributes="0"/>
+                          <Component id="cxForceRes" alignment="3" min="-2" max="-2" attributes="0"/>
+                      </Group>
+                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                      <Component id="jLabel1" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace min="-2" pref="8" max="-2" attributes="0"/>
+                      <Component id="jScrollPane3" min="-2" pref="144" max="-2" attributes="0"/>
+                  </Group>
+              </Group>
+          </Group>
+          <Group type="102" alignment="1" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="toMainList" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="refresh" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+              <Component id="jScrollPane1" max="32767" attributes="0"/>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JList" name="listUpidsAndDependencySet">
+          <Properties>
+            <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+              <Connection code="new DefaultListModel()" type="code"/>
+            </Property>
+          </Properties>
+          <Events>
+            <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="listUpidsAndDependencySetMouseClicked"/>
+          </Events>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane2">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JList" name="lstAlternatives">
+          <Properties>
+            <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+              <Connection code="new DefaultListModel()" type="code"/>
+            </Property>
+          </Properties>
+          <Events>
+            <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="lstAlternativesMouseClicked"/>
+          </Events>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Component class="javax.swing.JButton" name="toMainList">
+      <Properties>
+        <Property name="text" type="java.lang.String" value=".toMainList()"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="toMainListActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator1">
+      <Properties>
+        <Property name="orientation" type="int" value="1"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator2">
+      <Properties>
+        <Property name="orientation" type="int" value="1"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator3">
+    </Component>
+    <Component class="javax.swing.JButton" name="toMain">
+      <Properties>
+        <Property name="text" type="java.lang.String" value=".toMain()"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="toMainActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="refresh">
+      <Properties>
+        <Property name="text" type="java.lang.String" value=".refresh()"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="refreshActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="addDependency">
+      <Properties>
+        <Property name="text" type="java.lang.String" value=".add(&quot;Dependency&quot;)"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="addDependencyActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="addalternateDep">
+      <Properties>
+        <Property name="text" type="java.lang.String" value=".add(&quot;alterantive dependency&quot;);"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="addalternateDepActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JCheckBox" name="cxFin">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Finalized"/>
+        <Property name="enabled" type="boolean" value="false"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JCheckBox" name="cxMultiresolve">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Mehrfacherf&#xfc;llbar"/>
+        <Property name="enabled" type="boolean" value="false"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JCheckBox" name="cxForceRes">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="zwingend n&#xf6;tig"/>
+        <Property name="enabled" type="boolean" value="false"/>
+      </Properties>
+    </Component>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane3">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JTextArea" name="txaComm">
+          <Properties>
+            <Property name="columns" type="int" value="20"/>
+            <Property name="editable" type="boolean" value="false"/>
+            <Property name="rows" type="int" value="5"/>
+          </Properties>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Component class="javax.swing.JLabel" name="jLabel1">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Weitere Vermerke"/>
+      </Properties>
+    </Component>
+  </SubComponents>
+</Form>

+ 516 - 0
UpidTK/src/de/nplusc/upidgen/DependencyManager.java

@@ -0,0 +1,516 @@
+package de.nplusc.upidgen;
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Tools;
+import java.util.LinkedList;
+import javax.swing.DefaultListModel;
+import javax.swing.UIManager;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+public class DependencyManager extends javax.swing.JFrame
+{
+            DefaultListModel lm = null,lm2 = null;;
+    /**
+     * Creates new form DependencyManager
+     */
+    public DependencyManager()
+    {
+                                try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        initComponents();
+        lm= ((DefaultListModel)listUpidsAndDependencySet.getModel());
+        lm2= ((DefaultListModel)lstAlternatives.getModel());
+    }
+
+    /**
+     * This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        jScrollPane1 = new javax.swing.JScrollPane();
+        listUpidsAndDependencySet = new javax.swing.JList();
+        jScrollPane2 = new javax.swing.JScrollPane();
+        lstAlternatives = new javax.swing.JList();
+        toMainList = new javax.swing.JButton();
+        jSeparator1 = new javax.swing.JSeparator();
+        jSeparator2 = new javax.swing.JSeparator();
+        jSeparator3 = new javax.swing.JSeparator();
+        toMain = new javax.swing.JButton();
+        refresh = new javax.swing.JButton();
+        addDependency = new javax.swing.JButton();
+        addalternateDep = new javax.swing.JButton();
+        cxFin = new javax.swing.JCheckBox();
+        cxMultiresolve = new javax.swing.JCheckBox();
+        cxForceRes = new javax.swing.JCheckBox();
+        jScrollPane3 = new javax.swing.JScrollPane();
+        txaComm = new javax.swing.JTextArea();
+        jLabel1 = new javax.swing.JLabel();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+
+        listUpidsAndDependencySet.setModel(new DefaultListModel());
+        listUpidsAndDependencySet.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                listUpidsAndDependencySetMouseClicked(evt);
+            }
+        });
+        jScrollPane1.setViewportView(listUpidsAndDependencySet);
+
+        lstAlternatives.setModel(new DefaultListModel());
+        lstAlternatives.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                lstAlternativesMouseClicked(evt);
+            }
+        });
+        jScrollPane2.setViewportView(lstAlternatives);
+
+        toMainList.setText(".toMainList()");
+        toMainList.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                toMainListActionPerformed(evt);
+            }
+        });
+
+        jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL);
+
+        jSeparator2.setOrientation(javax.swing.SwingConstants.VERTICAL);
+
+        toMain.setText(".toMain()");
+        toMain.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                toMainActionPerformed(evt);
+            }
+        });
+
+        refresh.setText(".refresh()");
+        refresh.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                refreshActionPerformed(evt);
+            }
+        });
+
+        addDependency.setText(".add(\"Dependency\")");
+        addDependency.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                addDependencyActionPerformed(evt);
+            }
+        });
+
+        addalternateDep.setText(".add(\"alterantive dependency\");");
+        addalternateDep.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                addalternateDepActionPerformed(evt);
+            }
+        });
+
+        cxFin.setText("Finalized");
+        cxFin.setEnabled(false);
+
+        cxMultiresolve.setText("Mehrfacherfüllbar");
+        cxMultiresolve.setEnabled(false);
+
+        cxForceRes.setText("zwingend nötig");
+        cxForceRes.setEnabled(false);
+
+        txaComm.setColumns(20);
+        txaComm.setEditable(false);
+        txaComm.setRows(5);
+        jScrollPane3.setViewportView(txaComm);
+
+        jLabel1.setText("Weitere Vermerke");
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addGroup(layout.createSequentialGroup()
+                        .addComponent(refresh)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(toMainList))
+                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 1007, javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addGroup(layout.createSequentialGroup()
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(layout.createSequentialGroup()
+                                .addComponent(addDependency)
+                                .addGap(29, 29, 29)
+                                .addComponent(addalternateDep))
+                            .addGroup(layout.createSequentialGroup()
+                                .addGap(18, 18, 18)
+                                .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 544, javax.swing.GroupLayout.PREFERRED_SIZE))
+                            .addGroup(layout.createSequentialGroup()
+                                .addGap(115, 115, 115)
+                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addGroup(layout.createSequentialGroup()
+                                        .addComponent(cxFin)
+                                        .addGap(37, 37, 37)
+                                        .addComponent(cxMultiresolve)
+                                        .addGap(26, 26, 26)
+                                        .addComponent(cxForceRes))
+                                    .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 376, javax.swing.GroupLayout.PREFERRED_SIZE))))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(layout.createSequentialGroup()
+                                .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 195, javax.swing.GroupLayout.PREFERRED_SIZE))
+                            .addComponent(toMain, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addContainerGap())))
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jSeparator1)
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(toMain, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .addComponent(addDependency)
+                    .addComponent(addalternateDep))
+                .addGap(18, 18, 18)
+                .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 383, Short.MAX_VALUE)
+                            .addComponent(jSeparator2)))
+                    .addGroup(layout.createSequentialGroup()
+                        .addGap(74, 74, 74)
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(cxFin)
+                            .addComponent(cxMultiresolve)
+                            .addComponent(cxForceRes))
+                        .addGap(18, 18, 18)
+                        .addComponent(jLabel1)
+                        .addGap(8, 8, 8)
+                        .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 144, javax.swing.GroupLayout.PREFERRED_SIZE))))
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(toMainList)
+                    .addComponent(refresh))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(jScrollPane1)
+                .addContainerGap())
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+    
+    public DBWriter dbc = PublicStorage.dbc;
+    private String selectedUpid = "NOP";
+    boolean onTop = true;
+    private void toMainActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_toMainActionPerformed
+    {//GEN-HEADEREND:event_toMainActionPerformed
+        Ifatzeh.sel.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_toMainActionPerformed
+
+    private void refreshActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_refreshActionPerformed
+    {//GEN-HEADEREND:event_refreshActionPerformed
+        refreshList();
+    }//GEN-LAST:event_refreshActionPerformed
+
+    private void toMainListActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_toMainListActionPerformed
+    {//GEN-HEADEREND:event_toMainListActionPerformed
+        selectedUpid="NOP";
+        onTop=true;
+        refreshList();
+    }//GEN-LAST:event_toMainListActionPerformed
+
+    private void listUpidsAndDependencySetMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_listUpidsAndDependencySetMouseClicked
+    {//GEN-HEADEREND:event_listUpidsAndDependencySetMouseClicked
+        String load = (String)listUpidsAndDependencySet.getSelectedValue();
+        if(onTop)
+        {
+            
+            selectedUpid=load;
+            refreshList();
+            onTop=false;
+            return;
+        }
+        loadDependencyDataset(load);
+        updateAlternateDependencysList(load);
+    }//GEN-LAST:event_listUpidsAndDependencySetMouseClicked
+
+    private void addDependencyActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_addDependencyActionPerformed
+    {//GEN-HEADEREND:event_addDependencyActionPerformed
+        addDependency();
+    }//GEN-LAST:event_addDependencyActionPerformed
+
+    private void addalternateDepActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_addalternateDepActionPerformed
+    {//GEN-HEADEREND:event_addalternateDepActionPerformed
+        String src = (listUpidsAndDependencySet.getSelectedValue()+"").split("\\|")[1];
+        String availDep = (listUpidsAndDependencySet.getSelectedValue()+"").split("\\|")[0];
+        //String availDep = dbc.querySingleCell("Select DependencyID from DependencyLink,Dependency where Upid20='"+src+
+            //    "' and DependencyLink.dependencyID = Dependency.DependencyID and Target='"+baseDep+"'");
+        String gids = dbc.querySingleCell("Select ExchangeableGID from dependency where DependencyID="+availDep);
+        if(gids.equals("0"))
+        {
+            String gname = Tools.getInputString("Gruppenname bitte");
+            dbc.write("Insert into glist values(null,'"+gname+"')");
+            String gid = dbc.querySIngleColumn("Select gid from glist where name='"+gname+"' ORDER BY GID desc")[0];
+                                                    //hack um den gerade eingefügen bei gleichem namen zu erwischen
+            //UPDATE table_name
+            //SET column1=value, column2=value2,...
+            //WHERE some_column=some_value
+            dbc.write("Insert into dependencyExchg values(null,'"+src+"',"+gid+")");
+            dbc.write("Update Dependency Set ExchangeableGID="+gid+" where DependencyID="+availDep);
+            gids=gid;
+            Tools.DebugHelperPrint("Init", true, "UpidTK.enableDebug");
+        }
+        if(gids.equals("0"))//Dbg-Code
+        {
+            Tools.DebugHelperPrint("FickFotze", true, "UpidTK.enableDebug");
+        }
+        
+        
+        
+        
+        addDependency(false,null,Integer.valueOf(gids));
+        refreshList();
+        updateAlternateDependencysList(availDep);
+
+    }//GEN-LAST:event_addalternateDepActionPerformed
+
+    private void lstAlternativesMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_lstAlternativesMouseClicked
+    {//GEN-HEADEREND:event_lstAlternativesMouseClicked
+        String SelectedAltUpid = ((String)lstAlternatives.getSelectedValue()).split("\\|")[1];
+        //int selme = lm.lastIndexOf(SelectedAltUpid);
+        String depID = dbc.querySingleCell("Select Dependency.DependencyID from DependencyLink,Dependency where Upid20='"+selectedUpid+
+                "' and DependencyLink.dependencyID = Dependency.DependencyID and Target='"+SelectedAltUpid+"'");
+        listUpidsAndDependencySet.setSelectedValue(depID+"|"+SelectedAltUpid, true);
+        listUpidsAndDependencySetMouseClicked(evt);
+    }//GEN-LAST:event_lstAlternativesMouseClicked
+    public void loadDependencyDataset(String loadInf)
+    {
+        String[] DepIDsForTrg = dbc.querySIngleColumn("Select DependencyID from Dependency where Target='"+loadInf.substring(3)+"'");
+        String[] DepIDsforSrc = dbc.querySIngleColumn("Select DependencyID from dependencyLink where UPID20='"+selectedUpid+"'");
+        boolean fnd = false;
+        String did = "-1";
+        for (String avsrc : DepIDsforSrc)
+        {
+            for (String avtrg : DepIDsForTrg)
+            {
+                if(!fnd && avsrc.equals(avtrg))
+                {
+                    fnd=true;
+                    did = avsrc;
+                }
+            }
+        }
+        String[] depdataSet = dbc.querySingleRow("Select * from dependency where DependencyID="+did,6);
+        //Refid,DependencyID,Target,Flags,ExcahgeableGID,Comments
+        
+        String flagsrc = depdataSet[3].substring(2);
+        String Comm = depdataSet[5];
+        txaComm.setText(Comm);
+        
+        
+        //finalized,muliresolve,forceReq;
+        boolean fin = false,multiresolve=false,forceReq=false;
+        if(flagsrc.substring(0,1).equals("X"))
+            fin = true;
+        if(flagsrc.substring(1,2).equals("X"))
+            multiresolve = true;
+        if(flagsrc.substring(2,3).equals("X"))
+            forceReq = true;
+        cxFin.setSelected(fin);
+        cxMultiresolve.setSelected(multiresolve);
+        cxForceRes.setSelected(forceReq);
+        
+    }
+    
+    public void refreshList()
+    {
+        cxFin.setSelected(false);
+        cxMultiresolve.setSelected(false);
+        cxForceRes.setSelected(false);
+        txaComm.setText("");
+        lm.clear();
+
+        String upid=selectedUpid;
+        if(upid.equals("NOP"))
+        {
+
+            String[][]availUpidsWithLink = dbc.queryTable("Select Upid20,LinkageID from upidlst where Version=2",2);
+            
+            
+            //LinkedList<String> availUpids = new LinkedList<>();
+            for (String[] Upidlin : availUpidsWithLink)
+            {
+                String depSet = dbc.querySingleCell("Select DependencyLink from objreg2 where LinkageID="+Upidlin[1]);
+                if(depSet.equals("Enabled"))
+                {
+                    lm.addElement(Upidlin[0]);
+                }
+            }
+            
+            return;
+        }
+        try{
+        String[] availDependencyIDs = dbc.querySIngleColumn("Select DependencyID from dependencyLink where UPID20='"+selectedUpid+"'");
+        String[]  availDependencys = new String[availDependencyIDs.length];
+        if(availDependencys.length<=0)
+            return;
+
+        for (int i = 0; i < availDependencys.length; i++)
+        {
+            String depid = availDependencyIDs[i];
+            if(depid==null)
+                {
+                    Tools.DebugHelperPrint("FickFotze", true, "UpidTK.enableDebug");
+                    return;
+                }
+            availDependencys[i] = availDependencyIDs[i]+"|"+dbc.querySingleCell("Select Target from Dependency where DependencyID="+depid);
+            
+        }
+        for (String DID : availDependencys)
+        {
+            lm.addElement(DID);
+            //lm.addElement(lm);<--- gibt nen fetten StackOverflow
+            
+        }
+        }
+        catch (Exception e)
+        {
+            Tools.DebugHelperPrint("Listfail()", true, "UpidTK.enableDebug");
+        }
+    }
+    
+    public void updateAlternateDependencysList(String depId)
+    {
+        lm2.clear();
+        String gids = dbc.querySingleCell("Select ExchangeableGID from dependency where DependencyID="+depId.split("\\|")[0]);
+        String[] upids = dbc.querySIngleColumn("Select VariantTarget from dependencyexchg where GroupID="+gids);
+        for (int i = 0; i < upids.length; i++)
+        {
+           lm2.addElement(gids+"|"+upids[i]);
+        }
+    }
+    public void addDependency(boolean preFilledUpid,String Upid,int gid)
+    {
+        String addUpid="null";
+        if(!preFilledUpid)
+        {
+        String[] avilUpids = dbc.querySIngleColumn("Select Upid20 from Upidlst");
+        addUpid = Tools.listSelectorPopup(avilUpids, "Welche Upid soll dependency sein");
+        }
+        else
+            addUpid = Upid;
+        
+        
+        dbc.write("Insert into DependencyLink values(null,'"+selectedUpid+"')"); 
+        String currentID = dbc.querySingleCell("Select DependencyId from DependencyLink where Upid20='"+selectedUpid+"' ORDER by DependencyID DESC;");//Hack mit erstem element     
+        
+        LinkedList<String> Flags = new LinkedList<>();
+        //this.failOut();
+        boolean fin = Tools.dlg(true,"Dependency finalisieren?","Dadurch ist sie nicht mehr änderbar","Ja","Nein");
+        if(fin)
+            Flags.add("X");
+        else
+            Flags.add("D");
+        boolean mult = Tools.dlg(true,"Mehrfacherfüllung möglich","","Ja","Nein");
+        if(mult)
+            Flags.add("X");
+        else
+            Flags.add("D");
+        
+        boolean forced = Tools.dlg(true,"Zwingend erforderlich","","Ja","Nein");
+        if(forced)
+            Flags.add("X");
+        else
+            Flags.add("D");
+        String falgtrg = Flags.size()+"|";
+        for (String falg : Flags)
+        {
+            falgtrg +=falg;
+        }
+        String comm = Tools.getInputString("Kommentar?", true);
+        //Flags=finalized|multiResolve|forcedRequire
+        dbc.write("Insert into dependency values(null,"+currentID+",'"+addUpid+"','"+falgtrg+"',"+gid+",'"+comm+"')");
+        
+        if(gid>0)
+        {
+            dbc.write("Insert into dependencyExchg values(null,'"+addUpid+"',"+gid+")");
+        }
+
+        
+        
+        
+        
+        //refID,DependencyID,Target,Flags,0(ExchangableID,wird geändert wenn benötigt,0=Default->not enab)
+        
+    }
+    public void addDependency()
+    {
+        addDependency(false,null,0);
+    }
+    
+    /**
+     * @param args the command line arguments
+     */
+    public static void main(String args[])
+    {
+                        try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        /*
+         * Create and display the form
+         */
+        java.awt.EventQueue.invokeLater(new Runnable()
+        {
+
+            public void run()
+            {
+                new DependencyManager().setVisible(true);
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.JButton addDependency;
+    private javax.swing.JButton addalternateDep;
+    private javax.swing.JCheckBox cxFin;
+    private javax.swing.JCheckBox cxForceRes;
+    private javax.swing.JCheckBox cxMultiresolve;
+    private javax.swing.JLabel jLabel1;
+    private javax.swing.JScrollPane jScrollPane1;
+    private javax.swing.JScrollPane jScrollPane2;
+    private javax.swing.JScrollPane jScrollPane3;
+    private javax.swing.JSeparator jSeparator1;
+    private javax.swing.JSeparator jSeparator2;
+    private javax.swing.JSeparator jSeparator3;
+    private javax.swing.JList listUpidsAndDependencySet;
+    private javax.swing.JList lstAlternatives;
+    private javax.swing.JButton refresh;
+    private javax.swing.JButton toMain;
+    private javax.swing.JButton toMainList;
+    private javax.swing.JTextArea txaComm;
+    // End of variables declaration//GEN-END:variables
+}

+ 34 - 0
UpidTK/src/de/nplusc/upidgen/FlagConfig.form

@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.3" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <EmptySpace min="0" pref="400" max="32767" attributes="0"/>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <EmptySpace min="0" pref="300" max="32767" attributes="0"/>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+</Form>

+ 106 - 0
UpidTK/src/de/nplusc/upidgen/FlagConfig.java

@@ -0,0 +1,106 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package de.nplusc.upidgen;
+
+/**
+ *
+ * @author LH
+ */
+public class FlagConfig extends javax.swing.JFrame
+{
+
+    /**
+     * Creates new form FlagConfig
+     */
+    public FlagConfig()
+    {
+        initComponents();
+    }
+
+    /**
+     * This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGap(0, 400, Short.MAX_VALUE)
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGap(0, 300, Short.MAX_VALUE)
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    /**
+     * @param args the command line arguments
+     */
+    public static void main(String args[])
+    {
+        /*
+         * Set the Nimbus look and feel
+         */
+        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
+        /*
+         * If Nimbus (introduced in Java SE 6) is not available, stay with the
+         * default look and feel.
+         * For details see
+         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
+         */
+        try
+        {
+            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels())
+            {
+                if ("Nimbus".equals(info.getName()))
+                {
+                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
+                    break;
+                }
+            }
+        }
+        catch (ClassNotFoundException ex)
+        {
+            java.util.logging.Logger.getLogger(FlagConfig.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        catch (InstantiationException ex)
+        {
+            java.util.logging.Logger.getLogger(FlagConfig.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        catch (IllegalAccessException ex)
+        {
+            java.util.logging.Logger.getLogger(FlagConfig.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        catch (javax.swing.UnsupportedLookAndFeelException ex)
+        {
+            java.util.logging.Logger.getLogger(FlagConfig.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        //</editor-fold>
+
+        /*
+         * Create and display the form
+         */
+        java.awt.EventQueue.invokeLater(new Runnable()
+        {
+
+            public void run()
+            {
+                new FlagConfig().setVisible(true);
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    // End of variables declaration//GEN-END:variables
+}

+ 146 - 0
UpidTK/src/de/nplusc/upidgen/Ifatzeh.form

@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.3" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <NonVisualComponents>
+    <Component class="javax.swing.ButtonGroup" name="VIT1BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NSE1BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NSE2BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="ALZRBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="ArightsBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NonsellableBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="GaveAWayBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="MDFYBG">
+    </Component>
+  </NonVisualComponents>
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" alignment="0" attributes="0">
+              <EmptySpace min="-2" pref="46" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                  <Component id="jLabel1" max="32767" attributes="0"/>
+                  <Group type="102" attributes="0">
+                      <Group type="103" groupAlignment="1" attributes="0">
+                          <Group type="103" alignment="1" groupAlignment="1" max="-2" attributes="0">
+                              <Component id="btnUPIDs" max="32767" attributes="0"/>
+                              <Component id="btnArights" min="-2" pref="233" max="-2" attributes="0"/>
+                          </Group>
+                          <Component id="bntnArce" min="-2" pref="233" max="-2" attributes="0"/>
+                      </Group>
+                      <EmptySpace max="-2" attributes="0"/>
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Component id="btndepman" min="-2" pref="233" max="-2" attributes="0"/>
+                          <Group type="103" alignment="0" groupAlignment="0" max="-2" attributes="0">
+                              <Component id="exit" alignment="0" max="32767" attributes="0"/>
+                              <Component id="jButton5" alignment="0" min="-2" pref="233" max="-2" attributes="0"/>
+                          </Group>
+                      </Group>
+                  </Group>
+              </Group>
+              <EmptySpace pref="49" max="32767" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" alignment="1" attributes="0">
+              <EmptySpace pref="16" max="32767" attributes="0"/>
+              <Component id="jLabel1" min="-2" pref="21" max="-2" attributes="0"/>
+              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Component id="btndepman" min="-2" pref="92" max="-2" attributes="0"/>
+                  <Component id="btnUPIDs" alignment="0" min="-2" pref="92" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                  <Component id="jButton5" min="-2" pref="92" max="-2" attributes="0"/>
+                  <Component id="btnArights" min="-2" pref="92" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="exit" alignment="3" min="-2" pref="92" max="-2" attributes="0"/>
+                  <Component id="bntnArce" alignment="3" min="-2" pref="92" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Component class="javax.swing.JButton" name="btnUPIDs">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="UPIDs"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUPIDsActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="btnArights">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Arights"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnArightsActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="bntnArce">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Modify Arights-Categories"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="bntnArceActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="btndepman">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Dependencys"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btndepmanActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="jButton5">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="toBeSet"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JButton" name="exit">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="System.exit(0)"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="exitActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JLabel" name="jLabel1">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Select the dsired Module"/>
+      </Properties>
+    </Component>
+  </SubComponents>
+</Form>

+ 241 - 0
UpidTK/src/de/nplusc/upidgen/Ifatzeh.java

@@ -0,0 +1,241 @@
+package de.nplusc.upidgen;
+
+
+
+
+import de.nplusc.izc.tools.IOtools.fileFormatParsers.ico.BadIcoResException;
+import de.nplusc.izc.tools.IOtools.fileFormatParsers.ico.Ico;
+import de.nplusc.izc.tools.UiToolz.BootStrap;
+import java.io.IOException;
+import java.util.HashMap;
+import javax.swing.UIManager;
+import javax.swing.plaf.IconUIResource;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/*
+ * Ifatzeh.java
+ *
+ * Created on 01.12.2011, 18:47:36
+ */
+/**
+ *
+ * @author LH
+ */
+public class Ifatzeh extends javax.swing.JFrame {
+        public static Ifatzeh sel;
+        public static IfatzehRTR upid;
+        public static IfatzehAR arights;
+        public static ArightsCatEditor arce;
+        public static DependencyManager depman;
+        
+        
+        
+        
+        
+    /** Creates new form Ifatzeh */
+    public Ifatzeh() {
+        initComponents();
+    }
+
+    /** This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        VIT1BG = new javax.swing.ButtonGroup();
+        NSE1BG = new javax.swing.ButtonGroup();
+        NSE2BG = new javax.swing.ButtonGroup();
+        ALZRBG = new javax.swing.ButtonGroup();
+        ArightsBG = new javax.swing.ButtonGroup();
+        NonsellableBG = new javax.swing.ButtonGroup();
+        GaveAWayBG = new javax.swing.ButtonGroup();
+        MDFYBG = new javax.swing.ButtonGroup();
+        btnUPIDs = new javax.swing.JButton();
+        btnArights = new javax.swing.JButton();
+        bntnArce = new javax.swing.JButton();
+        btndepman = new javax.swing.JButton();
+        jButton5 = new javax.swing.JButton();
+        exit = new javax.swing.JButton();
+        jLabel1 = new javax.swing.JLabel();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+
+        btnUPIDs.setText("UPIDs");
+        btnUPIDs.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnUPIDsActionPerformed(evt);
+            }
+        });
+
+        btnArights.setText("Arights");
+        btnArights.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnArightsActionPerformed(evt);
+            }
+        });
+
+        bntnArce.setText("Modify Arights-Categories");
+        bntnArce.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                bntnArceActionPerformed(evt);
+            }
+        });
+
+        btndepman.setText("Dependencys");
+        btndepman.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btndepmanActionPerformed(evt);
+            }
+        });
+
+        jButton5.setText("toBeSet");
+
+        exit.setText("System.exit(0)");
+        exit.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                exitActionPerformed(evt);
+            }
+        });
+
+        jLabel1.setText("Select the dsired Module");
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addGap(46, 46, 46)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .addGroup(layout.createSequentialGroup()
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
+                                .addComponent(btnUPIDs, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                                .addComponent(btnArights, javax.swing.GroupLayout.PREFERRED_SIZE, 233, javax.swing.GroupLayout.PREFERRED_SIZE))
+                            .addComponent(bntnArce, javax.swing.GroupLayout.PREFERRED_SIZE, 233, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(btndepman, javax.swing.GroupLayout.PREFERRED_SIZE, 233, javax.swing.GroupLayout.PREFERRED_SIZE)
+                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                                .addComponent(exit, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                                .addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 233, javax.swing.GroupLayout.PREFERRED_SIZE)))))
+                .addContainerGap(49, Short.MAX_VALUE))
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addContainerGap(16, Short.MAX_VALUE)
+                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(btndepman, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(btnUPIDs, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(btnArights, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(exit, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(bntnArce, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addContainerGap())
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    private void btnUPIDsActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnUPIDsActionPerformed
+    {//GEN-HEADEREND:event_btnUPIDsActionPerformed
+       upid.setVisible(true);
+       this.setVisible(false);
+    }//GEN-LAST:event_btnUPIDsActionPerformed
+
+    private void btnArightsActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnArightsActionPerformed
+    {//GEN-HEADEREND:event_btnArightsActionPerformed
+        arights.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_btnArightsActionPerformed
+
+    private void exitActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_exitActionPerformed
+    {//GEN-HEADEREND:event_exitActionPerformed
+        System.exit(0);
+    }//GEN-LAST:event_exitActionPerformed
+
+    private void bntnArceActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_bntnArceActionPerformed
+    {//GEN-HEADEREND:event_bntnArceActionPerformed
+        arce.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_bntnArceActionPerformed
+
+    private void btndepmanActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btndepmanActionPerformed
+    {//GEN-HEADEREND:event_btndepmanActionPerformed
+        depman.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_btndepmanActionPerformed
+    
+    /**
+     * @param args the command line arguments
+     */
+    public static void main(String args[]) {
+                                try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        java.awt.EventQueue.invokeLater(new Runnable() {
+
+            @Override
+            public void run() {
+                try
+                {
+                    Ico i = new Ico("T:\\icns\\iZtools-others\\upidtk.ico");
+                    sel = new Ifatzeh();
+                    sel.setIconImages(i.getImages());
+                    new BootStrap(sel,true);
+                    upid =new IfatzehRTR();
+                    upid.setIconImages(i.getImages());
+                    arights = new IfatzehAR();
+                    arights.setIconImages(i.getImages());
+                    arce = new ArightsCatEditor();
+                    arce.setIconImages(i.getImages());
+                    depman = new DependencyManager();
+                    depman.setIconImages(i.getImages());
+                }
+                catch (BadIcoResException|IOException ex)
+                {
+                    sel = new Ifatzeh();
+                    new BootStrap(sel,true);
+                    upid =new IfatzehRTR();
+                    arights = new IfatzehAR();
+                    arce = new ArightsCatEditor();
+                    depman = new DependencyManager();
+                }
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.ButtonGroup ALZRBG;
+    private javax.swing.ButtonGroup ArightsBG;
+    private javax.swing.ButtonGroup GaveAWayBG;
+    private javax.swing.ButtonGroup MDFYBG;
+    private javax.swing.ButtonGroup NSE1BG;
+    private javax.swing.ButtonGroup NSE2BG;
+    private javax.swing.ButtonGroup NonsellableBG;
+    private javax.swing.ButtonGroup VIT1BG;
+    private javax.swing.JButton bntnArce;
+    private javax.swing.JButton btnArights;
+    private javax.swing.JButton btnUPIDs;
+    private javax.swing.JButton btndepman;
+    private javax.swing.JButton exit;
+    private javax.swing.JButton jButton5;
+    private javax.swing.JLabel jLabel1;
+    // End of variables declaration//GEN-END:variables
+}

+ 453 - 0
UpidTK/src/de/nplusc/upidgen/IfatzehAR.form

@@ -0,0 +1,453 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.5" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" alignment="1" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Component id="refreshUPIDS" min="-2" max="-2" attributes="0"/>
+                  <Component id="jScrollPane2" min="-2" pref="197" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace type="separate" max="-2" attributes="0"/>
+              <Component id="jSeparator1" min="-2" pref="13" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Group type="102" alignment="0" attributes="0">
+                      <EmptySpace max="-2" attributes="0"/>
+                      <Component id="jScrollPane1" min="-2" pref="519" max="-2" attributes="0"/>
+                      <EmptySpace max="32767" attributes="0"/>
+                  </Group>
+                  <Group type="102" alignment="0" attributes="0">
+                      <EmptySpace min="-2" pref="27" max="-2" attributes="0"/>
+                      <Component id="btnAddDataset" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace max="32767" attributes="0"/>
+                      <Component id="breturn" min="-2" pref="153" max="-2" attributes="0"/>
+                      <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+                  </Group>
+              </Group>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Component id="jSeparator1" alignment="0" max="32767" attributes="0"/>
+          <Group type="102" alignment="0" attributes="0">
+              <EmptySpace min="-2" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Group type="102" alignment="1" attributes="0">
+                      <Component id="refreshUPIDS" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                      <Component id="jScrollPane2" min="-2" pref="447" max="-2" attributes="0"/>
+                  </Group>
+                  <Group type="102" alignment="1" attributes="0">
+                      <Component id="jScrollPane1" min="-2" pref="461" max="-2" attributes="0"/>
+                      <EmptySpace max="-2" attributes="0"/>
+                      <Component id="breturn" min="-2" max="-2" attributes="0"/>
+                  </Group>
+              </Group>
+              <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+          </Group>
+          <Group type="102" alignment="1" attributes="0">
+              <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+              <Component id="btnAddDataset" min="-2" max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JTable" name="tblArightsInstall">
+          <Properties>
+            <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor" postCode="tblArightsInstall.setColumnModel(new HidableTableColumnModel(tblArightsInstall.getColumnModel()));">
+              <Table columnCount="50" rowCount="0">
+                <Column editable="false" title="TargetUserID" type="java.lang.Object"/>
+                <Column editable="false" title="Title 2" type="java.lang.Object"/>
+                <Column editable="false" title="Title 3" type="java.lang.Object"/>
+                <Column editable="false" title="Title 4" type="java.lang.Object"/>
+                <Column editable="false" title="Title 5" type="java.lang.Object"/>
+                <Column editable="false" title="Title 6" type="java.lang.Object"/>
+                <Column editable="false" title="Title 7" type="java.lang.Object"/>
+                <Column editable="false" title="Title 8" type="java.lang.Object"/>
+                <Column editable="false" title="Title 9" type="java.lang.Object"/>
+                <Column editable="false" title="Title 10" type="java.lang.Object"/>
+                <Column editable="false" title="Title 11" type="java.lang.Object"/>
+                <Column editable="false" title="Title 12" type="java.lang.Object"/>
+                <Column editable="false" title="Title 13" type="java.lang.Object"/>
+                <Column editable="false" title="Title 14" type="java.lang.Object"/>
+                <Column editable="false" title="Title 15" type="java.lang.Object"/>
+                <Column editable="false" title="Title 16" type="java.lang.Object"/>
+                <Column editable="false" title="Title 17" type="java.lang.Object"/>
+                <Column editable="false" title="Title 18" type="java.lang.Object"/>
+                <Column editable="false" title="Title 19" type="java.lang.Object"/>
+                <Column editable="false" title="Title 20" type="java.lang.Object"/>
+                <Column editable="false" title="Title 21" type="java.lang.Object"/>
+                <Column editable="false" title="Title 22" type="java.lang.Object"/>
+                <Column editable="false" title="Title 23" type="java.lang.Object"/>
+                <Column editable="false" title="Title 24" type="java.lang.Object"/>
+                <Column editable="false" title="Title 25" type="java.lang.Object"/>
+                <Column editable="false" title="Title 26" type="java.lang.Object"/>
+                <Column editable="false" title="Title 27" type="java.lang.Object"/>
+                <Column editable="false" title="Title 28" type="java.lang.Object"/>
+                <Column editable="false" title="Title 29" type="java.lang.Object"/>
+                <Column editable="false" title="Title 30" type="java.lang.Object"/>
+                <Column editable="false" title="Title 31" type="java.lang.Object"/>
+                <Column editable="false" title="Title 32" type="java.lang.Object"/>
+                <Column editable="false" title="Title 33" type="java.lang.Object"/>
+                <Column editable="false" title="Title 34" type="java.lang.Object"/>
+                <Column editable="false" title="Title 35" type="java.lang.Object"/>
+                <Column editable="false" title="Title 36" type="java.lang.Object"/>
+                <Column editable="false" title="Title 37" type="java.lang.Object"/>
+                <Column editable="false" title="Title 38" type="java.lang.Object"/>
+                <Column editable="false" title="Title 39" type="java.lang.Object"/>
+                <Column editable="false" title="Title 40" type="java.lang.Object"/>
+                <Column editable="false" title="Title 41" type="java.lang.Object"/>
+                <Column editable="false" title="Title 42" type="java.lang.Object"/>
+                <Column editable="false" title="Title 43" type="java.lang.Object"/>
+                <Column editable="false" title="Title 44" type="java.lang.Object"/>
+                <Column editable="false" title="Title 45" type="java.lang.Object"/>
+                <Column editable="false" title="Title 46" type="java.lang.Object"/>
+                <Column editable="false" title="Title 47" type="java.lang.Object"/>
+                <Column editable="false" title="Title 48" type="java.lang.Object"/>
+                <Column editable="false" title="Title 49" type="java.lang.Object"/>
+                <Column editable="false" title="Title 50" type="java.lang.Object"/>
+              </Table>
+            </Property>
+            <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor">
+              <TableColumnModel selectionModel="0">
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+                <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true">
+                  <Title/>
+                  <Editor/>
+                  <Renderer/>
+                </Column>
+              </TableColumnModel>
+            </Property>
+            <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor">
+              <TableHeader reorderingAllowed="true" resizingAllowed="true"/>
+            </Property>
+          </Properties>
+          <Events>
+            <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="tblArightsInstallMouseClicked"/>
+          </Events>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane2">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JList" name="LSTUPids">
+          <Properties>
+            <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+              <Connection code="new DefaultListModel()" type="code"/>
+            </Property>
+          </Properties>
+          <Events>
+            <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="LSTUPidsMouseClicked"/>
+          </Events>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Component class="javax.swing.JButton" name="refreshUPIDS">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Refresh"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="refreshUPIDSActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="btnAddDataset">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Add Rights-Dataset"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnAddDatasetActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator1">
+      <Properties>
+        <Property name="orientation" type="int" value="1"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JButton" name="breturn">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Back to Main"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="breturnActionPerformed"/>
+      </Events>
+    </Component>
+  </SubComponents>
+</Form>

+ 509 - 0
UpidTK/src/de/nplusc/upidgen/IfatzehAR.java

@@ -0,0 +1,509 @@
+package de.nplusc.upidgen;
+
+
+import de.nplusc.izc.tools.baseTools.HidableTableColumnModel;
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Tools;
+import de.nplusc.izc.tools.baseTools.arraytools;
+import javax.management.Query;
+import javax.swing.DefaultListModel;
+import javax.swing.JTable;
+import javax.swing.UIManager;
+import javax.swing.table.DefaultTableModel;
+import javax.swing.table.TableColumnModel;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+public class IfatzehAR extends javax.swing.JFrame
+{
+    
+    int selVer = 0;
+    HidableTableColumnModel tm = null;
+    private static DBWriter dbc = PublicStorage.dbc;
+    /**
+     * Creates new form IfatzehAR
+     */
+    public IfatzehAR()
+    {
+                                try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        initComponents();
+        tm = (HidableTableColumnModel)tblArightsInstall.getColumnModel();
+        tblArightsInstall.setAutoResizeMode( JTable.AUTO_RESIZE_OFF );
+        TableColumnModel m = tblArightsInstall.getColumnModel();
+        for (int i = 1; i < 50; i++)
+        {
+            tm.setColumnVisible(i, false);
+            /*TableColumn c = m.getColumn(i);
+            c.setPreferredWidth(1);
+            c.setHeaderValue("");
+           // c.setWidth(0);
+            //c.setMaxWidth(0);*/
+        }
+        refreshUpids();
+    }
+    public void killColumnsFrom(int idx)
+    {
+        cols=idx;
+        for (int i = idx; i < 50; i++)
+        {
+            tm.setColumnVisible(i, false);
+        }
+    }
+    int cols = 1;
+    public void insertColumn(String tit)
+    {
+        tm.setColumnVisible(cols, true);
+        
+        tm.getColumn(cols).setHeaderValue(tit);
+                cols++;
+        Tools.DebugHelperPrint("AddCol", true, "UpidTK.enableDebug");
+        
+        // HACkmit unsichtbaren Reservesalten :-)
+        
+       //TableColumn column = new TableColumn();
+    
+    }
+    public void insertValueToTable(String val,int row,int col)
+    {
+        DefaultTableModel m = (DefaultTableModel)tblArightsInstall.getModel();
+        m.setValueAt(val, row, col);
+    }
+    
+    
+    int rows=0;
+    public void insertRow()
+    {
+        rows++;
+        Tools.DebugHelperPrint("AddRow", true, "UpidTK.enableDebug");
+       ((DefaultTableModel)tblArightsInstall.getModel()).addRow(new String[50]);//nötig da unsivtbare ZEllen auch vorhanden sonst npx!!!!!!!!
+       ((DefaultTableModel)tblArightsInstall.getModel()).setRowCount(rows);
+    }
+    public void removeRow()
+    {
+        rows--;
+        Tools.DebugHelperPrint("RMVRow", true, "UpidTK.enableDebug");
+       ((DefaultTableModel)tblArightsInstall.getModel()).removeRow(rows);//nötig da unsivtbare ZEllen auch vorhanden sonst npx!!!!!!!!
+       ((DefaultTableModel)tblArightsInstall.getModel()).setRowCount(rows);
+    }
+    /**
+     * This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        jScrollPane1 = new javax.swing.JScrollPane();
+        tblArightsInstall = new javax.swing.JTable();
+        jScrollPane2 = new javax.swing.JScrollPane();
+        LSTUPids = new javax.swing.JList();
+        refreshUPIDS = new javax.swing.JButton();
+        btnAddDataset = new javax.swing.JButton();
+        jSeparator1 = new javax.swing.JSeparator();
+        breturn = new javax.swing.JButton();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+
+        tblArightsInstall.setModel(new javax.swing.table.DefaultTableModel(
+            new Object [][] {
+
+            },
+            new String [] {
+                "TargetUserID", "Title 2", "Title 3", "Title 4", "Title 5", "Title 6", "Title 7", "Title 8", "Title 9", "Title 10", "Title 11", "Title 12", "Title 13", "Title 14", "Title 15", "Title 16", "Title 17", "Title 18", "Title 19", "Title 20", "Title 21", "Title 22", "Title 23", "Title 24", "Title 25", "Title 26", "Title 27", "Title 28", "Title 29", "Title 30", "Title 31", "Title 32", "Title 33", "Title 34", "Title 35", "Title 36", "Title 37", "Title 38", "Title 39", "Title 40", "Title 41", "Title 42", "Title 43", "Title 44", "Title 45", "Title 46", "Title 47", "Title 48", "Title 49", "Title 50"
+            }
+        ) {
+            boolean[] canEdit = new boolean [] {
+                false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false
+            };
+
+            public boolean isCellEditable(int rowIndex, int columnIndex) {
+                return canEdit [columnIndex];
+            }
+        });
+        tblArightsInstall.setColumnModel(new HidableTableColumnModel(tblArightsInstall.getColumnModel()));
+        tblArightsInstall.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                tblArightsInstallMouseClicked(evt);
+            }
+        });
+        jScrollPane1.setViewportView(tblArightsInstall);
+
+        LSTUPids.setModel(new DefaultListModel());
+        LSTUPids.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                LSTUPidsMouseClicked(evt);
+            }
+        });
+        jScrollPane2.setViewportView(LSTUPids);
+
+        refreshUPIDS.setText("Refresh");
+        refreshUPIDS.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                refreshUPIDSActionPerformed(evt);
+            }
+        });
+
+        btnAddDataset.setText("Add Rights-Dataset");
+        btnAddDataset.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnAddDatasetActionPerformed(evt);
+            }
+        });
+
+        jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL);
+
+        breturn.setText("Back to Main");
+        breturn.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                breturnActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(refreshUPIDS)
+                    .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 197, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addGap(18, 18, 18)
+                .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 13, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 519, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addContainerGap())
+                    .addGroup(layout.createSequentialGroup()
+                        .addGap(27, 27, 27)
+                        .addComponent(btnAddDataset)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(breturn, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(26, 26, 26))))
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jSeparator1)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                        .addComponent(refreshUPIDS)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 447, javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 461, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(breturn)))
+                .addGap(0, 0, Short.MAX_VALUE))
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addGap(0, 0, Short.MAX_VALUE)
+                .addComponent(btnAddDataset))
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    private void refreshUPIDSActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_refreshUPIDSActionPerformed
+    {//GEN-HEADEREND:event_refreshUPIDSActionPerformed
+
+        refreshUpids();
+    }//GEN-LAST:event_refreshUPIDSActionPerformed
+
+    public void refreshUpids()
+    {
+                        ((DefaultListModel)(LSTUPids.getModel())).clear();
+        String[] availUPIDs = dbc.querySIngleColumn("Select UPID20 from upidlst");
+        
+        for (String elem : availUPIDs)
+        {
+            ((DefaultListModel)(LSTUPids.getModel())).addElement(elem);
+        }
+    }
+    String selLinkID = "0";
+    private void LSTUPidsMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_LSTUPidsMouseClicked
+    {//GEN-HEADEREND:event_LSTUPidsMouseClicked
+        String upid = (String)LSTUPids.getSelectedValue();
+        
+        String arightLnkID = dbc.querySingleCell("select RightsLinkageID from ArightsLink where TargetUPID='"+upid+"'");
+        selLinkID = arightLnkID;
+        int version = 0;
+        if(arightLnkID==null)
+        {
+            boolean NT = Tools.dlg(true, "Uninitialisierter Datensahtz", "Version wählen", "Version 2", "Version 1");
+            
+            version=1;
+            
+            if(NT)version=2;
+            initializeUPIDDataset(upid, version);
+            
+        }
+        else
+        {
+            version=Integer.valueOf(dbc.querySingleCell("select Version from ArightsLink where rightsLinkageID="+arightLnkID));
+        }
+        selVer = version;
+        refreshTable(upid, version);
+    }//GEN-LAST:event_LSTUPidsMouseClicked
+
+    private void btnAddDatasetActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnAddDatasetActionPerformed
+    {//GEN-HEADEREND:event_btnAddDatasetActionPerformed
+        String UUID="",Src="",upid = (String)LSTUPids.getSelectedValue(),query = "";
+        String RightLinkageID = dbc.querySingleCell("select RightsLinkageID from ArightsLink where TargetUPID='"+upid+"'");
+        if(selVer==1)
+        {
+            String CSUM;
+            UUID = Tools.getInputString(" UUID in alter Syntax");
+            Src = Tools.getInputString(" Ausstellercode in alter Syntax");
+            CSUM = Tools.getInputString("CSUM");
+            
+            //rightLinkageID,Source,Target,Version(1),InternalID(leave null),CSUM
+            query = "Insert into Arights1 values("+RightLinkageID+",'"+Src+"','"+UUID+"',1,null,'"+CSUM+"')";
+            
+        }
+        if(selVer==2)
+        {
+            String[][] availUUIDSraw = dbc.queryTable("Select * from User",2);
+            String[] availUUIDs = new String[availUUIDSraw.length];
+            for (int i = 0; i < availUUIDSraw.length; i++)
+            {
+                availUUIDs[i] = availUUIDSraw[i][0]+"|"+availUUIDSraw[i][1];
+            }
+            
+            UUID = Tools.listSelectorPopup(availUUIDs, "Wähle die gewünschte UUID für den der Datensatz gilt").split("\\|")[0];
+            Src = Tools.listSelectorPopup(availUUIDs, "Wähle die gewünschte UUID für den Ersteller").split("\\|")[0];
+            query = "Insert into Arights2 values("+RightLinkageID+","+Src+","+UUID+",2,'"+catSelK+"',null)";
+        }
+        dbc.write(query);
+        refreshTable(upid, selVer);
+    }//GEN-LAST:event_btnAddDatasetActionPerformed
+    
+    String[] availFlagVals = new String[]{"E","V","W","N"};
+    
+    private void tblArightsInstallMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_tblArightsInstallMouseClicked
+    {//GEN-HEADEREND:event_tblArightsInstallMouseClicked
+        String upid = (String)LSTUPids.getSelectedValue();
+        int x = tblArightsInstall.getSelectedColumn(); 
+        int y = tblArightsInstall.getSelectedRow();
+        if(x==0)
+        {
+            return;
+        }
+        String selFlag = hdr[x-1];
+        Tools.DebugHelperPrint(selFlag, true, "UpidTK.enableDebug");
+        if(evt.getClickCount()==2)
+        {
+            String DatasetID = "",USERID = "";
+            String FlagID = dbc.querySingleCell("Select Flag_Key from flag_descriptor where FlagName='"+selFlag+"'");
+            Tools.DebugHelperPrint(FlagID+"|"+selFlag, true, "UpidTK.enableDebug");
+            String FlagVal = Tools.listSelectorPopup(availFlagVals, "Welcher Wert???");
+            if(selVer==1)
+            {
+                USERID = (String)tblArightsInstall.getValueAt(y, 0);
+                DatasetID = dbc.querySingleCell("Select InternalID from Arights1 where Target='"+USERID+"'and RightsLinkageID="+selLinkID);
+            }
+            if(selVer==2)
+            {
+                USERID = ((String)tblArightsInstall.getValueAt(y, 0)).split("\\|")[0];
+                Tools.DebugHelperPrint(USERID+"|UserID", true, "UpidTK.enableDebug");
+                DatasetID = dbc.querySingleCell("Select ID from Arights2 where target="+USERID+" and RightsLinkageID="+selLinkID);
+            }
+            
+                //UPDATE table_name
+                //SET column1=value, column2=value2,...
+                //WHERE some_column=some_value
+            //DatasetID = dbc.querySingleCell("Select InternalID from Arights1 where Target='"+USERID+"'and RightsLinkageID="+selLinkID);
+            try
+            {
+            dbc.write("Update arightsflag Set value='"+FlagVal+"' where FlagKey ="+FlagID+" and Version ="+selVer+" and DatasetID="+DatasetID,true,true);    
+                
+            }
+            catch (Exception e)
+            {
+                dbc.write("Insert into Arightsflag values(null,"+FlagID+",'"+FlagVal+"',"+DatasetID+","+selVer+")");
+                //dbc.write("Insert into")
+            }
+            refreshTable(upid,selVer);
+            
+            
+        }
+    }//GEN-LAST:event_tblArightsInstallMouseClicked
+
+    private void breturnActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_breturnActionPerformed
+    {//GEN-HEADEREND:event_breturnActionPerformed
+        Ifatzeh.sel.setVisible(true);
+        this.setVisible(false);
+        
+    }//GEN-LAST:event_breturnActionPerformed
+
+    /**
+     * @param args the command line arguments
+     */
+    
+    
+    
+    
+    public void initializeUPIDDataset(String upid, int Version)
+    {
+        dbc.write("Insert into ArightsLink values(null,'"+upid+"',"+Version+")");
+        LSTUPidsMouseClicked(null);
+    }
+    
+    String[] hdr = null;
+    boolean firstrun = true;
+    public void refreshTable(String UPID,int version)
+    {
+        if(firstrun)
+        {
+            insertRow();
+            firstrun=false;
+        }
+        while(rows>1)
+        {
+            removeRow();
+        }
+        for (int i = 0; i < 50; i++)
+        {
+            for (int j = 0; j < rows; j++)
+            {
+                insertValueToTable("", j, i);
+            }
+            
+        }
+        
+        killColumnsFrom(1);
+        
+        
+        
+        
+        if(version==1) hdr = dbc.querySIngleColumn("Select FlagName from Flag_descriptor ORDER BY Flag_Key Asc");
+        else hdr = getAvailFlags(UPID);
+        for (String hdre : hdr)
+        {
+            insertColumn(hdre);
+        }
+        
+        String[][] table = null;
+        String LinkageID = dbc.querySingleCell("Select RightsLinkageID from Arightslink where TargetUPID='"+UPID+"'");
+        int i=0;
+        if(version==1)
+        {
+            table = dbc.queryTable("Select * from Arights1 where RightsLinkageID="+LinkageID, 6);
+            
+            for (String[] rowcnt : table)
+            {
+                if(i>=1)
+                {
+                    insertRow();
+                }
+                //String cplUUID = rowcnt[3]+"|"+dbc.querySingleCell("Select Name from User where UserID="+rowcnt[3]);
+                insertValueToTable(rowcnt[2], i, 0);
+                
+                String[][] SetFlags = dbc.queryTable("Select FlagKey,Value from arightsflag where Version=1 and DatasetID="+rowcnt[4], 2);
+                for (String[] aFlag : SetFlags)
+                {
+                    String flagVal = dbc.querySingleCell("Select Flagname from Flag_descriptor where Flag_Key="+aFlag[0]);
+                    int tablepos = arraytools.getElemPosInArray(hdr, flagVal)+1;
+                    Tools.DebugHelperPrint(tablepos+"", true, "UpidTK.enableDebug");
+                    insertValueToTable(aFlag[1], i, tablepos);
+                }
+                i++;
+            }
+        }
+        if(version==2)
+        {
+            table = dbc.queryTable("Select * from Arights2 where RightsLinkageID="+LinkageID, 6);
+            for (String[] rowcnt:table)
+            {
+                if(i==rows)
+                {
+                    insertRow();
+                }
+                String cplUUID = rowcnt[2]+"|"+dbc.querySingleCell("Select Name from User where UserID="+rowcnt[2]);
+                
+                insertValueToTable(cplUUID, i, 0);
+                
+                String[][] SetFlags = dbc.queryTable("Select FlagKey,Value from arightsflag where Version=2 and DatasetID="+rowcnt[5], 2);
+                for (String[] aFlag : SetFlags)
+                {
+                    String flagVal = dbc.querySingleCell("Select Flagname from Flag_descriptor where Flag_Key="+aFlag[0]);
+                    int tablepos = arraytools.getElemPosInArray(hdr, flagVal)+1;
+                    Tools.DebugHelperPrint(tablepos+"", true, "UpidTK.enableDebug");
+                    insertValueToTable(aFlag[1], i, tablepos);
+                }
+                i++;
+            }
+        }
+        
+        
+    }
+    
+    String catSelK;
+    public String[] getAvailFlags(String UPID20)
+    {
+        String t1c = UPID20.substring(0,4);
+        String t2c = UPID20.substring(0,2);
+        catSelK = t1c;
+        String CatIDT1 = dbc.querySingleCell("Select CategoryID from category where CategoryName='"+t1c+"'");
+        String CatIDT2 = dbc.querySingleCell("Select CategoryID from category where CategoryName='"+t2c+"'");
+        if(CatIDT1==null)
+        {
+            catSelK = t2c;
+            CatIDT1=CatIDT2;
+        }
+        String[] availFlagIDs = dbc.querySIngleColumn("Select FlagKey from flagcat where CatID="+CatIDT1+" ORDER BY FlagKey ASC");
+        
+        String[] FlagNames = new String[availFlagIDs.length];
+        for (int i = 0; i < FlagNames.length; i++)
+        {
+           FlagNames[i] = dbc.querySingleCell("Select FlagName from Flag_descriptor where Flag_key="+availFlagIDs[i]);
+           
+        }
+        
+        return FlagNames;
+    }
+    
+    public static void main(String args[])
+    {
+                        try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        /*
+         * Create and display the form
+         */
+        java.awt.EventQueue.invokeLater(new Runnable()
+        {
+
+            public void run()
+            {
+                new IfatzehAR().setVisible(true);
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.JList LSTUPids;
+    private javax.swing.JButton breturn;
+    private javax.swing.JButton btnAddDataset;
+    private javax.swing.JScrollPane jScrollPane1;
+    private javax.swing.JScrollPane jScrollPane2;
+    private javax.swing.JSeparator jSeparator1;
+    private javax.swing.JButton refreshUPIDS;
+    private javax.swing.JTable tblArightsInstall;
+    // End of variables declaration//GEN-END:variables
+}

+ 1515 - 0
UpidTK/src/de/nplusc/upidgen/IfatzehChgFlag.form

@@ -0,0 +1,1515 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.3" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <NonVisualComponents>
+    <Component class="javax.swing.ButtonGroup" name="VIT1BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NSE1BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NSE2BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="ALZRBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="ArightsBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NonsellableBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="GaveAWayBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="MDFYBG">
+    </Component>
+  </NonVisualComponents>
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+    <Property name="title" type="java.lang.String" value="UPIDMgr"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Component id="jSeparator3" alignment="0" pref="1201" max="32767" attributes="0"/>
+          <Group type="102" alignment="0" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Component id="jScrollPane4" min="-2" pref="870" max="-2" attributes="0"/>
+              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+              <Component id="jPanel5" max="32767" attributes="0"/>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" attributes="0">
+              <EmptySpace min="-2" pref="33" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                  <Component id="jScrollPane4" pref="622" max="32767" attributes="0"/>
+                  <Component id="jPanel5" max="32767" attributes="0"/>
+              </Group>
+              <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+              <Component id="jSeparator3" min="-2" pref="2" max="-2" attributes="0"/>
+              <EmptySpace pref="30" max="32767" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Component class="javax.swing.JSeparator" name="jSeparator3">
+    </Component>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane4">
+      <Properties>
+        <Property name="horizontalScrollBarPolicy" type="int" value="31"/>
+      </Properties>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Container class="javax.swing.JTabbedPane" name="tpOVW">
+
+          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+          <SubComponents>
+            <Container class="javax.swing.JPanel" name="pIp">
+              <Properties>
+                <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+                  <Dimension value="[800, 800]"/>
+                </Property>
+                <Property name="name" type="java.lang.String" value="" noResource="true"/>
+                <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+                  <Dimension value="[800, 800]"/>
+                </Property>
+              </Properties>
+              <AuxValues>
+                <AuxValue name="JavaCodeGenerator_InitCodePost" type="java.lang.String" value="pIp.setSize(800,800);"/>
+              </AuxValues>
+              <Constraints>
+                <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                  <JTabbedPaneConstraints tabName="Input" toolTip="">
+                    <Property name="tabTitle" type="java.lang.String" value="Input"/>
+                    <Property name="tabToolTip" type="java.lang.String" value=""/>
+                  </JTabbedPaneConstraints>
+                </Constraint>
+              </Constraints>
+
+              <Layout>
+                <DimensionLayout dim="0">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="UpperArea" alignment="0" min="-2" max="-2" attributes="0"/>
+                              <Component id="LowerCOntainer" alignment="0" min="-2" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace pref="558" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+                <DimensionLayout dim="1">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Component id="UpperArea" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                          <Component id="LowerCOntainer" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace min="0" pref="180" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+              </Layout>
+              <SubComponents>
+                <Container class="javax.swing.JPanel" name="LowerCOntainer">
+
+                  <Layout>
+                    <DimensionLayout dim="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace min="-2" pref="93" max="-2" attributes="0"/>
+                              <Component id="FlagsnStuff" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="32767" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <EmptySpace min="-2" pref="69" max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Component id="jLabel14" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane1" min="-2" pref="337" max="-2" attributes="0"/>
+                              </Group>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" attributes="0">
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" attributes="0">
+                                              <EmptySpace min="-2" pref="2" max="-2" attributes="0"/>
+                                              <Component id="internalValue" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <Component id="lblBDAT" alignment="0" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                          <Component id="internalValueN" pref="231" max="32767" attributes="0"/>
+                                          <Component id="txBDAT" max="32767" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                  </Group>
+                                  <Group type="102" attributes="0">
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" attributes="0">
+                                              <Component id="RegDate" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="regDAteN" min="-2" pref="231" max="-2" attributes="0"/>
+                                              <EmptySpace min="0" pref="126" max="32767" attributes="0"/>
+                                          </Group>
+                                          <Component id="Sign" alignment="1" max="32767" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                    <DimensionLayout dim="1">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="FlagsnStuff" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace min="-2" pref="9" max="-2" attributes="0"/>
+                              <Component id="jLabel14" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                  <Group type="102" attributes="0">
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="RegDate" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="regDAteN" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="internalValue" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="internalValueN" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Component id="lblBDAT" alignment="0" min="-2" max="-2" attributes="0"/>
+                                          <Component id="txBDAT" alignment="0" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="32767" attributes="0"/>
+                                      <Component id="Sign" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Component id="jScrollPane1" min="-2" pref="109" max="-2" attributes="0"/>
+                              </Group>
+                              <EmptySpace pref="35" max="32767" attributes="0"/>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                  </Layout>
+                  <SubComponents>
+                    <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+                      <AuxValues>
+                        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                      </AuxValues>
+
+                      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                      <SubComponents>
+                        <Component class="javax.swing.JTextArea" name="Comment">
+                          <Properties>
+                            <Property name="columns" type="int" value="20"/>
+                            <Property name="rows" type="int" value="5"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Component class="javax.swing.JLabel" name="RegDate">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="RegDate"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="regDAteN">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="DD.MM.YY"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="regDAteNActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="internalValue">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="internalValue"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="Sign">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Sign and Create"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="SignActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="internalValueN">
+                    </Component>
+                    <Container class="javax.swing.JPanel" name="FlagsnStuff">
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="34" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane9" min="-2" pref="452" max="-2" attributes="0"/>
+                                  <EmptySpace pref="53" max="32767" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane9" min="-2" pref="286" max="-2" attributes="0"/>
+                                  <EmptySpace pref="14" max="32767" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane9">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTable" name="jTable1">
+                              <Properties>
+                                <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+                                  <Table columnCount="4" rowCount="4">
+                                    <Column editable="true" title="Title 1" type="java.lang.Object"/>
+                                    <Column editable="true" title="Title 2" type="java.lang.Object"/>
+                                    <Column editable="true" title="Title 3" type="java.lang.Object"/>
+                                    <Column editable="true" title="Title 4" type="java.lang.Object"/>
+                                  </Table>
+                                </Property>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                    <Component class="javax.swing.JLabel" name="jLabel14">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Comments"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="txBDAT">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="DD.MM.YY"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="lblBDAT">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="BuyDate"/>
+                      </Properties>
+                    </Component>
+                  </SubComponents>
+                </Container>
+                <Container class="javax.swing.JPanel" name="UpperArea">
+
+                  <Layout>
+                    <DimensionLayout dim="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="UPAssistant" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace min="-2" pref="24" max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Component id="jLabel4" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="10" max="-2" attributes="0"/>
+                                      <Component id="upidcsum" min="-2" pref="118" max="-2" attributes="0"/>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Component id="PreVerify" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="27" max="-2" attributes="0"/>
+                                      <Component id="versTogg" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace max="32767" attributes="0"/>
+                                  </Group>
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Component id="jLabel1" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Component id="txfUPID" min="-2" pref="125" max="-2" attributes="0"/>
+                                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                      <Component id="jLabel15" min="-2" pref="85" max="-2" attributes="0"/>
+                                      <EmptySpace pref="151" max="32767" attributes="0"/>
+                                      <Component id="btnPachUpidAssist" min="-2" pref="216" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="51" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                      <Component id="kkCsum" min="-2" pref="65" max="-2" attributes="0"/>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Component id="cxError" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace max="32767" attributes="0"/>
+                                      <Component id="btnEnabOVR" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Component id="cXoverride" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="84" max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                    <DimensionLayout dim="1">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="3" attributes="0">
+                                  <Component id="UPAssistant" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jLabel1" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="txfUPID" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jLabel15" alignment="3" max="32767" attributes="0"/>
+                              </Group>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="PreVerify" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="jLabel4" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="upidcsum" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="versTogg" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="kkCsum" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="cxError" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="cXoverride" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="btnEnabOVR" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <EmptySpace min="-2" pref="29" max="-2" attributes="0"/>
+                                      <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                              <EmptySpace max="-2" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <Component id="btnPachUpidAssist" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                  </Layout>
+                  <SubComponents>
+                    <Component class="javax.swing.JLabel" name="jLabel15">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="V1-ONLY"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="jLabel3">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="KK-Csum"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="UPAssistant">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Asistent"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="UPAssistantActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JCheckBox" name="cxError">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Error?"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="jLabel1">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Upid-20"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="txfUPID">
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="upidcsum">
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="kkCsum">
+                    </Component>
+                    <Component class="javax.swing.JButton" name="PreVerify">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="PreVerify"/>
+                        <Property name="enabled" type="boolean" value="false"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="PreVerifyActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="jLabel4">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Checksum"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JToggleButton" name="versTogg">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Version 2"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="versToggActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="btnPachUpidAssist">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="UPIDAssistant updaten"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPachUpidAssistActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JCheckBox" name="cXoverride">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="IgnoreCsums"/>
+                        <Property name="enabled" type="boolean" value="false"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="btnEnabOVR">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Manuell erzeugt?"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnEnabOVRActionPerformed"/>
+                      </Events>
+                    </Component>
+                  </SubComponents>
+                </Container>
+              </SubComponents>
+            </Container>
+            <Container class="javax.swing.JPanel" name="pPreview">
+              <Constraints>
+                <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                  <JTabbedPaneConstraints tabName="Preview">
+                    <Property name="tabTitle" type="java.lang.String" value="Preview"/>
+                  </JTabbedPaneConstraints>
+                </Constraint>
+              </Constraints>
+
+              <Layout>
+                <DimensionLayout dim="0">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                      <Component id="previewVers1" max="32767" attributes="0"/>
+                                      <Component id="previewVers2" max="32767" attributes="0"/>
+                                  </Group>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="19" max="-2" attributes="0"/>
+                                  <Component id="btnSubmitToDb" min="-2" pref="386" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                          <EmptySpace pref="1002" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+                <DimensionLayout dim="1">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" alignment="0" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Component id="previewVers1" min="-2" pref="165" max="-2" attributes="0"/>
+                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                          <Component id="previewVers2" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                          <Component id="btnSubmitToDb" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace pref="400" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+              </Layout>
+              <SubComponents>
+                <Container class="javax.swing.JTabbedPane" name="previewVers1">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="panelKKPreviewF">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorderseite">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorderseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Component id="lblGaveAwayPr" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="40" max="-2" attributes="0"/>
+                                  <Component id="lblV1AlzrUnselll" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="32767" attributes="0"/>
+                                  <Component id="lblGenViaPHP" min="-2" pref="23" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="1" attributes="0">
+                                      <Component id="LBLCsum" min="-2" max="-2" attributes="0"/>
+                                      <Group type="102" attributes="0">
+                                          <Component id="jLabel16" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="102" alignment="0" attributes="0">
+                                                  <Component id="LBLMDIF" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                                  <Component id="LBLUpidCsum" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Component id="lblRegDate" alignment="0" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="102" attributes="0">
+                                                  <Component id="lblUPID8" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                                  <Component id="lblNumercArea" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Group type="102" attributes="0">
+                                                  <Component id="lblFlagLine" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace min="-2" pref="45" max="-2" attributes="0"/>
+                                                  <Component id="lblKcode" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace pref="50" max="32767" attributes="0"/>
+                              </Group>
+                              <Component id="lblCommentsLine1" alignment="1" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="lblV1AlzrUnselll" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblGenViaPHP" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblGaveAwayPr" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <EmptySpace min="-2" pref="14" max="-2" attributes="0"/>
+                                  <Component id="lblCommentsLine1" min="-2" max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="lblRegDate" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblFlagLine" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace min="-2" pref="31" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="jLabel16" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="LBLMDIF" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="LBLUpidCsum" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblUPID8" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblNumercArea" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="16" max="-2" attributes="0"/>
+                                          <Component id="lblKcode" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace max="32767" attributes="0"/>
+                                  <Component id="LBLCsum" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="62" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="jLabel16">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LBLMDIF">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LBLUpidCsum">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblUPID8">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblNumercArea">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblRegDate">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblFlagLine">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|  |X|X|     |X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblKcode">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCommentsLine1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LBLCsum">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblV1AlzrUnselll">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|XXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblGenViaPHP">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblGaveAwayPr">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="panelKKPreviewB">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="R&#xfc;ckseite">
+                            <Property name="tabTitle" type="java.lang.String" value="R&#xfc;ckseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane2" pref="298" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jScrollPane2" alignment="0" pref="137" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane2">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="txaCommRest">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+                <Component class="javax.swing.JButton" name="btnSubmitToDb">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value=".submit()"/>
+                  </Properties>
+                  <Events>
+                    <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSubmitToDbActionPerformed"/>
+                  </Events>
+                </Component>
+                <Container class="javax.swing.JTabbedPane" name="previewVers2">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="jPanel2">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorderseite">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorderseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="102" alignment="0" attributes="0">
+                                                  <Component id="mdfyrow" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                                  <Component id="DependencyDataset" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Group type="102" alignment="0" attributes="0">
+                                                  <Component id="RwgDAteV2" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                                  <Component id="BuyDateV2" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                                  <Component id="FlagRow" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                          <EmptySpace pref="34" max="32767" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="103" alignment="1" groupAlignment="0" max="-2" attributes="0">
+                                                  <Group type="102" alignment="1" attributes="0">
+                                                      <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                                      <Component id="CommExists" min="-2" pref="22" max="-2" attributes="0"/>
+                                                      <EmptySpace max="-2" attributes="0"/>
+                                                  </Group>
+                                                  <Group type="102" attributes="0">
+                                                      <Component id="ival_alzr_src" min="-2" max="-2" attributes="0"/>
+                                                      <EmptySpace min="-2" pref="21" max="-2" attributes="0"/>
+                                                  </Group>
+                                              </Group>
+                                              <Group type="102" alignment="1" attributes="0">
+                                                  <Component id="KKV2" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <Component id="jLabel17" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Component id="MFIDV2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="UpidCsum2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="upid8v2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="upidNumVals" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="jLabel21" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Component id="jScrollPane5" min="-2" pref="133" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="mdfyrow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="DependencyDataset" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="ival_alzr_src" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="CommExists" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="KKV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="FlagRow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="BuyDateV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="RwgDAteV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="jLabel17" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="MFIDV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="UpidCsum2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="upid8v2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="upidNumVals" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace min="0" pref="18" max="32767" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Component id="jLabel21" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane5" min="-2" pref="39" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="mdfyrow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="x  |x  |X  |X  |"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="DependencyDataset">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXX|XXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="ival_alzr_src">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X   |X  |X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="CommExists">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="RwgDAteV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="BuyDateV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="FlagRow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|X|X|X|X|X|X|X|X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="KKV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel17">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="MFIDV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="UpidCsum2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="upid8v2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="upidNumVals">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane5">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="txaCsumV2">
+                              <Properties>
+                                <Property name="columns" type="int" value="40"/>
+                                <Property name="rows" type="int" value="1"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                        <Component class="javax.swing.JLabel" name="jLabel21">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="2"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="jPanel1">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="R&#xfc;ckseite">
+                            <Property name="tabTitle" type="java.lang.String" value="R&#xfc;ckseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane3" pref="298" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jScrollPane3" alignment="0" pref="143" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane3">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="CommV2">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+              </SubComponents>
+            </Container>
+            <Container class="javax.swing.JPanel" name="pBrowse">
+              <Constraints>
+                <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                  <JTabbedPaneConstraints tabName="Browse">
+                    <Property name="tabTitle" type="java.lang.String" value="Browse"/>
+                  </JTabbedPaneConstraints>
+                </Constraint>
+              </Constraints>
+
+              <Layout>
+                <DimensionLayout dim="0">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jLabel19" alignment="0" min="-2" max="-2" attributes="0"/>
+                              <Component id="btnRefresh" alignment="0" min="-2" max="-2" attributes="0"/>
+                              <Component id="jScrollPane6" alignment="0" min="-2" pref="170" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace min="-2" pref="27" max="-2" attributes="0"/>
+                          <Component id="jSeparator2" min="-2" pref="17" max="-2" attributes="0"/>
+                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                          <Group type="103" groupAlignment="1" attributes="0">
+                              <Component id="tpReadV1" alignment="1" min="-2" pref="335" max="-2" attributes="0"/>
+                              <Component id="tpReadV2" alignment="1" min="-2" pref="334" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace pref="838" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+                <DimensionLayout dim="1">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" alignment="0" attributes="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+                                  <Component id="tpReadV1" min="-2" pref="188" max="-2" attributes="0"/>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="tpReadV2" min="-2" pref="188" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="7" max="-2" attributes="0"/>
+                                  <Component id="btnRefresh" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                  <Component id="jLabel19" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane6" min="-2" pref="521" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                          <EmptySpace pref="219" max="32767" attributes="0"/>
+                      </Group>
+                      <Component id="jSeparator2" alignment="0" max="32767" attributes="0"/>
+                  </Group>
+                </DimensionLayout>
+              </Layout>
+              <SubComponents>
+                <Container class="javax.swing.JTabbedPane" name="tpReadV1">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="jPanel3">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorne">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorne"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="1" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Component id="BCSUM1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" attributes="0">
+                                          <Component id="lblRegDatBrow" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="105" max="-2" attributes="0"/>
+                                          <Component id="lblFlagsRow" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace pref="45" max="32767" attributes="0"/>
+                                          <Component id="SCV1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="19" max="-2" attributes="0"/>
+                                  <Component id="upid20V1" min="-2" pref="230" max="-2" attributes="0"/>
+                                  <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="9" max="-2" attributes="0"/>
+                                  <Component id="lblGaveAwayBrow" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="lblIVAl" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="32767" attributes="0"/>
+                                  <Component id="lblSrcB" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="42" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="lblSrcB" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblIVAl" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblGaveAwayBrow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <EmptySpace min="-2" pref="39" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="lblRegDatBrow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblFlagsRow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace pref="43" max="32767" attributes="0"/>
+                                          <Component id="upid20V1" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="36" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="31" max="-2" attributes="0"/>
+                                          <Component id="SCV1" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="BCSUM1" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="lblIVAl">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblSrcB">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblRegDatBrow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblFlagsRow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|  |X|X|  |  |X|X|X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="upid20V1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O|XXXX|XX|XX|XXXX|XXXX|XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="SCV1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="BCSUM1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblGaveAwayBrow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="jPanel4">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Hinten">
+                            <Property name="tabTitle" type="java.lang.String" value="Hinten"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane8" pref="310" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jScrollPane8" alignment="0" pref="160" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane8">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="CommV1b">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+                <Container class="javax.swing.JTabbedPane" name="tpReadV2">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="panelViewV2vorne">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorne">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorne"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <Component id="lblTopFlagsV2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="lblIVAlFlagsV2" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="67" max="-2" attributes="0"/>
+                                          <Component id="LblUPID20" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace pref="76" max="32767" attributes="0"/>
+                                          <Component id="jLabel22" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <Component id="lblDates" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Component id="lblFlagsV" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="lblShortCode" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Component id="lblcsumv2_28" min="-2" max="-2" attributes="0"/>
+                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                  <Component id="lblCommFlag" alignment="1" min="-2" pref="16" max="-2" attributes="0"/>
+                                                  <Component id="lblCsumV2_14_28" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="lblCsumV20_14" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Component id="lblTopFlagsV2" min="-2" max="-2" attributes="0"/>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="lblIVAlFlagsV2" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="11" max="-2" attributes="0"/>
+                                          <Component id="lblCommFlag" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="8" max="-2" attributes="0"/>
+                                          <Component id="lblShortCode" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="jLabel22" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="25" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="lblDates" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblFlagsV" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Component id="LblUPID20" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace min="-2" pref="1" max="-2" attributes="0"/>
+                                  <Component id="lblCsumV20_14" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="3" max="-2" attributes="0"/>
+                                  <Component id="lblCsumV2_14_28" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="lblcsumv2_28" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace pref="16" max="32767" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="lblTopFlagsV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblIVAlFlagsV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXX|X|X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCommFlag">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblDates">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XX|XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LblUPID20">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O|XXXX|XX|XX|XXXX|XXXX|XX|XX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblShortCode">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCsumV2_14_28">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblcsumv2_28">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCsumV20_14">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblFlagsV">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|X|X|X|X|X|X|X|X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel22">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="2"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="panehViewV2Hinten">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="HInten">
+                            <Property name="tabTitle" type="java.lang.String" value="HInten"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane7" pref="309" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane7" pref="138" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane7">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="CommV2b">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="editable" type="boolean" value="false"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+                <Container class="javax.swing.JScrollPane" name="jScrollPane6">
+                  <AuxValues>
+                    <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                  </AuxValues>
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                  <SubComponents>
+                    <Component class="javax.swing.JList" name="LSTUPids">
+                      <Properties>
+                        <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+                          <Connection code="new javax.swing.DefaultListModel()" type="code"/>
+                        </Property>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="LSTUPidsMouseClicked"/>
+                      </Events>
+                    </Component>
+                  </SubComponents>
+                </Container>
+                <Component class="javax.swing.JLabel" name="jLabel19">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value="List of avail UPIDs"/>
+                  </Properties>
+                </Component>
+                <Component class="javax.swing.JButton" name="btnRefresh">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value="Refresh"/>
+                  </Properties>
+                  <Events>
+                    <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnRefreshActionPerformed"/>
+                  </Events>
+                </Component>
+                <Component class="javax.swing.JSeparator" name="jSeparator2">
+                  <Properties>
+                    <Property name="orientation" type="int" value="1"/>
+                    <Property name="toolTipText" type="java.lang.String" value=""/>
+                  </Properties>
+                </Component>
+              </SubComponents>
+            </Container>
+          </SubComponents>
+        </Container>
+      </SubComponents>
+    </Container>
+    <Container class="javax.swing.JPanel" name="jPanel5">
+
+      <Layout>
+        <DimensionLayout dim="0">
+          <Group type="103" groupAlignment="0" attributes="0">
+              <Group type="102" attributes="0">
+                  <EmptySpace min="-2" pref="69" max="-2" attributes="0"/>
+                  <Component id="jLabel18" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace max="32767" attributes="0"/>
+              </Group>
+              <Group type="102" alignment="0" attributes="0">
+                  <EmptySpace max="-2" attributes="0"/>
+                  <Component id="btnSwitchMode" max="32767" attributes="0"/>
+              </Group>
+          </Group>
+        </DimensionLayout>
+        <DimensionLayout dim="1">
+          <Group type="103" groupAlignment="0" attributes="0">
+              <Group type="102" alignment="0" attributes="0">
+                  <Component id="btnSwitchMode" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace min="-2" pref="92" max="-2" attributes="0"/>
+                  <Component id="jLabel18" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace pref="493" max="32767" attributes="0"/>
+              </Group>
+          </Group>
+        </DimensionLayout>
+      </Layout>
+      <SubComponents>
+        <Component class="javax.swing.JLabel" name="jLabel18">
+          <Properties>
+            <Property name="text" type="java.lang.String" value="Reserved for Future Use"/>
+          </Properties>
+        </Component>
+        <Component class="javax.swing.JButton" name="btnSwitchMode">
+          <Properties>
+            <Property name="text" type="java.lang.String" value="Modus wexxeln"/>
+          </Properties>
+          <Events>
+            <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSwitchModeActionPerformed"/>
+          </Events>
+        </Component>
+      </SubComponents>
+    </Container>
+  </SubComponents>
+</Form>

+ 2003 - 0
UpidTK/src/de/nplusc/upidgen/IfatzehChgFlag.java

@@ -0,0 +1,2003 @@
+package de.nplusc.upidgen;
+
+
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Tools;
+import java.util.HashMap;
+import javax.swing.DefaultListModel;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/*
+ * Ifatzeh.java
+ *
+ * Created on 01.12.2011, 18:47:36
+ */
+/**
+ *
+ * @author LH
+ */
+public class IfatzehChgFlag extends javax.swing.JFrame {
+        HashMap<String,String> flags  = new  HashMap<>();
+        HashMap<String,String> upid   = new  HashMap<>();
+        HashMap<String,String> values = new  HashMap<>();
+        private static DBWriter dbc = PublicStorage.dbc;
+    /** Creates new form Ifatzeh */
+    public IfatzehChgFlag() {
+        initComponents();
+        pPreview.setVisible(false);
+        tpOVW.setEnabledAt(1,false);
+        tpReadV2.setVisible(false);
+        tpReadV1.setVisible(false);
+        btnRefreshActionPerformed(null);
+        cXoverride.setVisible(false);
+        btnEnabOVR.setVisible(false);
+    }
+    String[] FlagsAvail = {"SRC","VIT","NSE1","NSE2","ALZR","Arights","Nonsellable","gaveAway","MDFY"};
+    boolean Version1 = false;
+    /** This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        VIT1BG = new javax.swing.ButtonGroup();
+        NSE1BG = new javax.swing.ButtonGroup();
+        NSE2BG = new javax.swing.ButtonGroup();
+        ALZRBG = new javax.swing.ButtonGroup();
+        ArightsBG = new javax.swing.ButtonGroup();
+        NonsellableBG = new javax.swing.ButtonGroup();
+        GaveAWayBG = new javax.swing.ButtonGroup();
+        MDFYBG = new javax.swing.ButtonGroup();
+        jSeparator3 = new javax.swing.JSeparator();
+        jScrollPane4 = new javax.swing.JScrollPane();
+        tpOVW = new javax.swing.JTabbedPane();
+        pIp = new javax.swing.JPanel();
+        LowerCOntainer = new javax.swing.JPanel();
+        jScrollPane1 = new javax.swing.JScrollPane();
+        Comment = new javax.swing.JTextArea();
+        RegDate = new javax.swing.JLabel();
+        regDAteN = new javax.swing.JTextField();
+        internalValue = new javax.swing.JLabel();
+        Sign = new javax.swing.JButton();
+        internalValueN = new javax.swing.JTextField();
+        FlagsnStuff = new javax.swing.JPanel();
+        jScrollPane9 = new javax.swing.JScrollPane();
+        jTable1 = new javax.swing.JTable();
+        jLabel14 = new javax.swing.JLabel();
+        txBDAT = new javax.swing.JTextField();
+        lblBDAT = new javax.swing.JLabel();
+        UpperArea = new javax.swing.JPanel();
+        jLabel15 = new javax.swing.JLabel();
+        jLabel3 = new javax.swing.JLabel();
+        UPAssistant = new javax.swing.JButton();
+        cxError = new javax.swing.JCheckBox();
+        jLabel1 = new javax.swing.JLabel();
+        txfUPID = new javax.swing.JTextField();
+        upidcsum = new javax.swing.JTextField();
+        kkCsum = new javax.swing.JTextField();
+        PreVerify = new javax.swing.JButton();
+        jLabel4 = new javax.swing.JLabel();
+        versTogg = new javax.swing.JToggleButton();
+        btnPachUpidAssist = new javax.swing.JButton();
+        cXoverride = new javax.swing.JCheckBox();
+        btnEnabOVR = new javax.swing.JButton();
+        pPreview = new javax.swing.JPanel();
+        previewVers1 = new javax.swing.JTabbedPane();
+        panelKKPreviewF = new javax.swing.JPanel();
+        jLabel16 = new javax.swing.JLabel();
+        LBLMDIF = new javax.swing.JLabel();
+        LBLUpidCsum = new javax.swing.JLabel();
+        lblUPID8 = new javax.swing.JLabel();
+        lblNumercArea = new javax.swing.JLabel();
+        lblRegDate = new javax.swing.JLabel();
+        lblFlagLine = new javax.swing.JLabel();
+        lblKcode = new javax.swing.JLabel();
+        lblCommentsLine1 = new javax.swing.JLabel();
+        LBLCsum = new javax.swing.JLabel();
+        lblV1AlzrUnselll = new javax.swing.JLabel();
+        lblGenViaPHP = new javax.swing.JLabel();
+        lblGaveAwayPr = new javax.swing.JLabel();
+        panelKKPreviewB = new javax.swing.JPanel();
+        jScrollPane2 = new javax.swing.JScrollPane();
+        txaCommRest = new javax.swing.JTextArea();
+        btnSubmitToDb = new javax.swing.JButton();
+        previewVers2 = new javax.swing.JTabbedPane();
+        jPanel2 = new javax.swing.JPanel();
+        mdfyrow = new javax.swing.JLabel();
+        DependencyDataset = new javax.swing.JLabel();
+        ival_alzr_src = new javax.swing.JLabel();
+        CommExists = new javax.swing.JLabel();
+        RwgDAteV2 = new javax.swing.JLabel();
+        BuyDateV2 = new javax.swing.JLabel();
+        FlagRow = new javax.swing.JLabel();
+        KKV2 = new javax.swing.JLabel();
+        jLabel17 = new javax.swing.JLabel();
+        MFIDV2 = new javax.swing.JLabel();
+        UpidCsum2 = new javax.swing.JLabel();
+        upid8v2 = new javax.swing.JLabel();
+        upidNumVals = new javax.swing.JLabel();
+        jScrollPane5 = new javax.swing.JScrollPane();
+        txaCsumV2 = new javax.swing.JTextArea();
+        jLabel21 = new javax.swing.JLabel();
+        jPanel1 = new javax.swing.JPanel();
+        jScrollPane3 = new javax.swing.JScrollPane();
+        CommV2 = new javax.swing.JTextArea();
+        pBrowse = new javax.swing.JPanel();
+        tpReadV1 = new javax.swing.JTabbedPane();
+        jPanel3 = new javax.swing.JPanel();
+        lblIVAl = new javax.swing.JLabel();
+        lblSrcB = new javax.swing.JLabel();
+        lblRegDatBrow = new javax.swing.JLabel();
+        lblFlagsRow = new javax.swing.JLabel();
+        upid20V1 = new javax.swing.JLabel();
+        SCV1 = new javax.swing.JLabel();
+        BCSUM1 = new javax.swing.JLabel();
+        lblGaveAwayBrow = new javax.swing.JLabel();
+        jPanel4 = new javax.swing.JPanel();
+        jScrollPane8 = new javax.swing.JScrollPane();
+        CommV1b = new javax.swing.JTextArea();
+        tpReadV2 = new javax.swing.JTabbedPane();
+        panelViewV2vorne = new javax.swing.JPanel();
+        lblTopFlagsV2 = new javax.swing.JLabel();
+        lblIVAlFlagsV2 = new javax.swing.JLabel();
+        lblCommFlag = new javax.swing.JLabel();
+        lblDates = new javax.swing.JLabel();
+        LblUPID20 = new javax.swing.JLabel();
+        lblShortCode = new javax.swing.JLabel();
+        lblCsumV2_14_28 = new javax.swing.JLabel();
+        lblcsumv2_28 = new javax.swing.JLabel();
+        lblCsumV20_14 = new javax.swing.JLabel();
+        lblFlagsV = new javax.swing.JLabel();
+        jLabel22 = new javax.swing.JLabel();
+        panehViewV2Hinten = new javax.swing.JPanel();
+        jScrollPane7 = new javax.swing.JScrollPane();
+        CommV2b = new javax.swing.JTextArea();
+        jScrollPane6 = new javax.swing.JScrollPane();
+        LSTUPids = new javax.swing.JList();
+        jLabel19 = new javax.swing.JLabel();
+        btnRefresh = new javax.swing.JButton();
+        jSeparator2 = new javax.swing.JSeparator();
+        jPanel5 = new javax.swing.JPanel();
+        jLabel18 = new javax.swing.JLabel();
+        btnSwitchMode = new javax.swing.JButton();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+        setTitle("UPIDMgr");
+
+        jScrollPane4.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+
+        pIp.setMaximumSize(new java.awt.Dimension(800, 800));
+        pIp.setName("");
+        pIp.setPreferredSize(new java.awt.Dimension(800, 800));
+        pIp.setSize(800,800);
+
+        Comment.setColumns(20);
+        Comment.setRows(5);
+        jScrollPane1.setViewportView(Comment);
+
+        RegDate.setText("RegDate");
+
+        regDAteN.setText("DD.MM.YY");
+        regDAteN.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                regDAteNActionPerformed(evt);
+            }
+        });
+
+        internalValue.setText("internalValue");
+
+        Sign.setText("Sign and Create");
+        Sign.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                SignActionPerformed(evt);
+            }
+        });
+
+        jTable1.setModel(new javax.swing.table.DefaultTableModel(
+            new Object [][] {
+                {null, null, null, null},
+                {null, null, null, null},
+                {null, null, null, null},
+                {null, null, null, null}
+            },
+            new String [] {
+                "Title 1", "Title 2", "Title 3", "Title 4"
+            }
+        ));
+        jScrollPane9.setViewportView(jTable1);
+
+        javax.swing.GroupLayout FlagsnStuffLayout = new javax.swing.GroupLayout(FlagsnStuff);
+        FlagsnStuff.setLayout(FlagsnStuffLayout);
+        FlagsnStuffLayout.setHorizontalGroup(
+            FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                .addGap(34, 34, 34)
+                .addComponent(jScrollPane9, javax.swing.GroupLayout.PREFERRED_SIZE, 452, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap(53, Short.MAX_VALUE))
+        );
+        FlagsnStuffLayout.setVerticalGroup(
+            FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane9, javax.swing.GroupLayout.PREFERRED_SIZE, 286, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap(14, Short.MAX_VALUE))
+        );
+
+        jLabel14.setText("Comments");
+
+        txBDAT.setText("DD.MM.YY");
+
+        lblBDAT.setText("BuyDate");
+
+        javax.swing.GroupLayout LowerCOntainerLayout = new javax.swing.GroupLayout(LowerCOntainer);
+        LowerCOntainer.setLayout(LowerCOntainerLayout);
+        LowerCOntainerLayout.setHorizontalGroup(
+            LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                .addGap(93, 93, 93)
+                .addComponent(FlagsnStuff, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap())
+            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                .addGap(69, 69, 69)
+                .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(jLabel14)
+                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 337, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                                .addGap(2, 2, 2)
+                                .addComponent(internalValue))
+                            .addComponent(lblBDAT))
+                        .addGap(18, 18, 18)
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addComponent(internalValueN, javax.swing.GroupLayout.DEFAULT_SIZE, 231, Short.MAX_VALUE)
+                            .addComponent(txBDAT))
+                        .addGap(0, 0, Short.MAX_VALUE))
+                    .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                                .addComponent(RegDate)
+                                .addGap(18, 18, 18)
+                                .addComponent(regDAteN, javax.swing.GroupLayout.PREFERRED_SIZE, 231, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addGap(0, 126, Short.MAX_VALUE))
+                            .addComponent(Sign, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                        .addContainerGap())))
+        );
+        LowerCOntainerLayout.setVerticalGroup(
+            LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(FlagsnStuff, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(9, 9, 9)
+                .addComponent(jLabel14)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(RegDate)
+                            .addComponent(regDAteN, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(internalValue)
+                            .addComponent(internalValueN, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(lblBDAT)
+                            .addComponent(txBDAT, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(Sign))
+                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 109, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addContainerGap(35, Short.MAX_VALUE))
+        );
+
+        jLabel15.setText("V1-ONLY");
+
+        jLabel3.setText("KK-Csum");
+
+        UPAssistant.setText("Asistent");
+        UPAssistant.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                UPAssistantActionPerformed(evt);
+            }
+        });
+
+        cxError.setText("Error?");
+
+        jLabel1.setText("Upid-20");
+
+        PreVerify.setText("PreVerify");
+        PreVerify.setEnabled(false);
+        PreVerify.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                PreVerifyActionPerformed(evt);
+            }
+        });
+
+        jLabel4.setText("Checksum");
+
+        versTogg.setText("Version 2");
+        versTogg.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                versToggActionPerformed(evt);
+            }
+        });
+
+        btnPachUpidAssist.setText("UPIDAssistant updaten");
+        btnPachUpidAssist.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnPachUpidAssistActionPerformed(evt);
+            }
+        });
+
+        cXoverride.setText("IgnoreCsums");
+        cXoverride.setEnabled(false);
+
+        btnEnabOVR.setText("Manuell erzeugt?");
+        btnEnabOVR.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnEnabOVRActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout UpperAreaLayout = new javax.swing.GroupLayout(UpperArea);
+        UpperArea.setLayout(UpperAreaLayout);
+        UpperAreaLayout.setHorizontalGroup(
+            UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(UpperAreaLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(UPAssistant)
+                .addGap(24, 24, 24)
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addComponent(jLabel4)
+                        .addGap(10, 10, 10)
+                        .addComponent(upidcsum, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(18, 18, 18)
+                        .addComponent(PreVerify)
+                        .addGap(27, 27, 27)
+                        .addComponent(versTogg)
+                        .addContainerGap())
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addComponent(jLabel1)
+                        .addGap(18, 18, 18)
+                        .addComponent(txfUPID, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(jLabel15, javax.swing.GroupLayout.PREFERRED_SIZE, 85, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 151, Short.MAX_VALUE)
+                        .addComponent(btnPachUpidAssist, javax.swing.GroupLayout.PREFERRED_SIZE, 216, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(51, 51, 51))
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addComponent(jLabel3)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(kkCsum, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(18, 18, 18)
+                        .addComponent(cxError)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(btnEnabOVR)
+                        .addGap(18, 18, 18)
+                        .addComponent(cXoverride)
+                        .addGap(84, 84, 84))))
+        );
+        UpperAreaLayout.setVerticalGroup(
+            UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(UpperAreaLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(UPAssistant)
+                    .addComponent(jLabel1)
+                    .addComponent(txfUPID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(jLabel15, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(PreVerify)
+                            .addComponent(jLabel4)
+                            .addComponent(upidcsum, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                            .addComponent(versTogg))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(kkCsum, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                            .addComponent(cxError)
+                            .addComponent(cXoverride)
+                            .addComponent(btnEnabOVR)))
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addGap(29, 29, 29)
+                        .addComponent(jLabel3)))
+                .addContainerGap())
+            .addGroup(UpperAreaLayout.createSequentialGroup()
+                .addComponent(btnPachUpidAssist)
+                .addGap(0, 0, Short.MAX_VALUE))
+        );
+
+        javax.swing.GroupLayout pIpLayout = new javax.swing.GroupLayout(pIp);
+        pIp.setLayout(pIpLayout);
+        pIpLayout.setHorizontalGroup(
+            pIpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pIpLayout.createSequentialGroup()
+                .addGap(18, 18, 18)
+                .addGroup(pIpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(UpperArea, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(LowerCOntainer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addContainerGap(558, Short.MAX_VALUE))
+        );
+        pIpLayout.setVerticalGroup(
+            pIpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pIpLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(UpperArea, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(18, 18, 18)
+                .addComponent(LowerCOntainer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(0, 180, Short.MAX_VALUE))
+        );
+
+        tpOVW.addTab("Input", null, pIp, "");
+
+        jLabel16.setText("O");
+
+        LBLMDIF.setText("|XXXX|");
+
+        LBLUpidCsum.setText("XX|XX|");
+
+        lblUPID8.setText("XXXX|XXXX|");
+
+        lblNumercArea.setText("XX|XX");
+
+        lblRegDate.setText("XX|XX|XX");
+
+        lblFlagLine.setText("X|  |X|X|     |X|X|X|");
+
+        lblKcode.setText("XXX");
+
+        lblCommentsLine1.setText("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
+
+        LBLCsum.setText("XXXXX");
+
+        lblV1AlzrUnselll.setText("X|XXX");
+
+        lblGenViaPHP.setText("X");
+
+        lblGaveAwayPr.setText("X");
+
+        javax.swing.GroupLayout panelKKPreviewFLayout = new javax.swing.GroupLayout(panelKKPreviewF);
+        panelKKPreviewF.setLayout(panelKKPreviewFLayout);
+        panelKKPreviewFLayout.setHorizontalGroup(
+            panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                .addComponent(lblGaveAwayPr)
+                .addGap(40, 40, 40)
+                .addComponent(lblV1AlzrUnselll)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addComponent(lblGenViaPHP, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(37, 37, 37))
+            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(LBLCsum)
+                    .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                        .addComponent(jLabel16)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                                .addComponent(LBLMDIF)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(LBLUpidCsum))
+                            .addComponent(lblRegDate))
+                        .addGap(18, 18, 18)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                                .addComponent(lblUPID8)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(lblNumercArea))
+                            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                                .addComponent(lblFlagLine)
+                                .addGap(45, 45, 45)
+                                .addComponent(lblKcode)))))
+                .addContainerGap(50, Short.MAX_VALUE))
+            .addComponent(lblCommentsLine1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+        );
+        panelKKPreviewFLayout.setVerticalGroup(
+            panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(lblV1AlzrUnselll)
+                    .addComponent(lblGenViaPHP)
+                    .addComponent(lblGaveAwayPr))
+                .addGap(14, 14, 14)
+                .addComponent(lblCommentsLine1)
+                .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(lblRegDate)
+                            .addComponent(lblFlagLine))
+                        .addGap(31, 31, 31)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(jLabel16)
+                            .addComponent(LBLMDIF)
+                            .addComponent(LBLUpidCsum)
+                            .addComponent(lblUPID8)
+                            .addComponent(lblNumercArea)))
+                    .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                        .addGap(16, 16, 16)
+                        .addComponent(lblKcode)))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addComponent(LBLCsum)
+                .addGap(62, 62, 62))
+        );
+
+        previewVers1.addTab("Vorderseite", panelKKPreviewF);
+
+        txaCommRest.setColumns(20);
+        txaCommRest.setRows(5);
+        jScrollPane2.setViewportView(txaCommRest);
+
+        javax.swing.GroupLayout panelKKPreviewBLayout = new javax.swing.GroupLayout(panelKKPreviewB);
+        panelKKPreviewB.setLayout(panelKKPreviewBLayout);
+        panelKKPreviewBLayout.setHorizontalGroup(
+            panelKKPreviewBLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelKKPreviewBLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 298, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        panelKKPreviewBLayout.setVerticalGroup(
+            panelKKPreviewBLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 137, Short.MAX_VALUE)
+        );
+
+        previewVers1.addTab("Rückseite", panelKKPreviewB);
+
+        btnSubmitToDb.setText(".submit()");
+        btnSubmitToDb.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnSubmitToDbActionPerformed(evt);
+            }
+        });
+
+        mdfyrow.setText("x  |x  |X  |X  |");
+
+        DependencyDataset.setText("XXXXXXXX|XXXXXXXX");
+
+        ival_alzr_src.setText("X   |X  |X");
+
+        CommExists.setText("X");
+
+        RwgDAteV2.setText("XXXX|XX");
+
+        BuyDateV2.setText("|XXXX|XX");
+
+        FlagRow.setText("|X|X|X|X|X|X|X|X|X|X|");
+
+        KKV2.setText("XXXX");
+
+        jLabel17.setText("O");
+
+        MFIDV2.setText("|XXXX|");
+
+        UpidCsum2.setText("XX|XX|");
+
+        upid8v2.setText("XXXX|XXXX|");
+
+        upidNumVals.setText("XX|XX");
+
+        txaCsumV2.setColumns(40);
+        txaCsumV2.setRows(1);
+        jScrollPane5.setViewportView(txaCsumV2);
+
+        jLabel21.setText("2");
+
+        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
+        jPanel2.setLayout(jPanel2Layout);
+        jPanel2Layout.setHorizontalGroup(
+            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel2Layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(jPanel2Layout.createSequentialGroup()
+                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(jPanel2Layout.createSequentialGroup()
+                                .addComponent(mdfyrow)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                .addComponent(DependencyDataset))
+                            .addGroup(jPanel2Layout.createSequentialGroup()
+                                .addComponent(RwgDAteV2)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(BuyDateV2)
+                                .addGap(18, 18, 18)
+                                .addComponent(FlagRow)))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 34, Short.MAX_VALUE)
+                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                                    .addGap(0, 0, Short.MAX_VALUE)
+                                    .addComponent(CommExists, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                    .addContainerGap())
+                                .addGroup(jPanel2Layout.createSequentialGroup()
+                                    .addComponent(ival_alzr_src)
+                                    .addGap(21, 21, 21)))
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                                .addComponent(KKV2)
+                                .addContainerGap())))
+                    .addGroup(jPanel2Layout.createSequentialGroup()
+                        .addComponent(jLabel17)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(MFIDV2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(UpidCsum2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(upid8v2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(upidNumVals)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(jLabel21)
+                        .addContainerGap())
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 133, javax.swing.GroupLayout.PREFERRED_SIZE))))
+        );
+        jPanel2Layout.setVerticalGroup(
+            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel2Layout.createSequentialGroup()
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(mdfyrow)
+                    .addComponent(DependencyDataset)
+                    .addComponent(ival_alzr_src))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(CommExists)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(KKV2)
+                    .addComponent(FlagRow)
+                    .addComponent(BuyDateV2)
+                    .addComponent(RwgDAteV2))
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(jPanel2Layout.createSequentialGroup()
+                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(jLabel17)
+                            .addComponent(MFIDV2)
+                            .addComponent(UpidCsum2)
+                            .addComponent(upid8v2)
+                            .addComponent(upidNumVals))
+                        .addGap(0, 18, Short.MAX_VALUE))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(jLabel21)))
+                .addGap(18, 18, 18)
+                .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE))
+        );
+
+        previewVers2.addTab("Vorderseite", jPanel2);
+
+        CommV2.setColumns(20);
+        CommV2.setRows(5);
+        jScrollPane3.setViewportView(CommV2);
+
+        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
+        jPanel1.setLayout(jPanel1Layout);
+        jPanel1Layout.setHorizontalGroup(
+            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel1Layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 298, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        jPanel1Layout.setVerticalGroup(
+            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 143, Short.MAX_VALUE)
+        );
+
+        previewVers2.addTab("Rückseite", jPanel1);
+
+        javax.swing.GroupLayout pPreviewLayout = new javax.swing.GroupLayout(pPreview);
+        pPreview.setLayout(pPreviewLayout);
+        pPreviewLayout.setHorizontalGroup(
+            pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pPreviewLayout.createSequentialGroup()
+                .addGroup(pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(pPreviewLayout.createSequentialGroup()
+                        .addContainerGap()
+                        .addGroup(pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addComponent(previewVers1)
+                            .addComponent(previewVers2)))
+                    .addGroup(pPreviewLayout.createSequentialGroup()
+                        .addGap(19, 19, 19)
+                        .addComponent(btnSubmitToDb, javax.swing.GroupLayout.PREFERRED_SIZE, 386, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                .addContainerGap(1002, Short.MAX_VALUE))
+        );
+        pPreviewLayout.setVerticalGroup(
+            pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pPreviewLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(previewVers1, javax.swing.GroupLayout.PREFERRED_SIZE, 165, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(18, 18, 18)
+                .addComponent(previewVers2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(18, 18, 18)
+                .addComponent(btnSubmitToDb)
+                .addContainerGap(400, Short.MAX_VALUE))
+        );
+
+        tpOVW.addTab("Preview", pPreview);
+
+        lblIVAl.setText("X|XX");
+
+        lblSrcB.setText("X");
+
+        lblRegDatBrow.setText("XXXX|XX");
+
+        lblFlagsRow.setText("X|  |X|X|  |  |X|X|X");
+
+        upid20V1.setText("O|XXXX|XX|XX|XXXX|XXXX|XX|XX");
+
+        SCV1.setText("XXX");
+
+        BCSUM1.setText("XXXXX");
+
+        lblGaveAwayBrow.setText("X");
+
+        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
+        jPanel3.setLayout(jPanel3Layout);
+        jPanel3Layout.setHorizontalGroup(
+            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(BCSUM1))
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addComponent(lblRegDatBrow)
+                        .addGap(105, 105, 105)
+                        .addComponent(lblFlagsRow)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 45, Short.MAX_VALUE)
+                        .addComponent(SCV1)))
+                .addGap(26, 26, 26))
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addGap(19, 19, 19)
+                .addComponent(upid20V1, javax.swing.GroupLayout.PREFERRED_SIZE, 230, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(0, 0, Short.MAX_VALUE))
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addGap(9, 9, 9)
+                .addComponent(lblGaveAwayBrow)
+                .addGap(18, 18, 18)
+                .addComponent(lblIVAl)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addComponent(lblSrcB)
+                .addGap(42, 42, 42))
+        );
+        jPanel3Layout.setVerticalGroup(
+            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(lblSrcB)
+                    .addComponent(lblIVAl)
+                    .addComponent(lblGaveAwayBrow))
+                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addGap(39, 39, 39)
+                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(lblRegDatBrow)
+                            .addComponent(lblFlagsRow))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 43, Short.MAX_VALUE)
+                        .addComponent(upid20V1)
+                        .addGap(36, 36, 36))
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addGap(31, 31, 31)
+                        .addComponent(SCV1)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(BCSUM1)
+                        .addContainerGap())))
+        );
+
+        tpReadV1.addTab("Vorne", jPanel3);
+
+        CommV1b.setColumns(20);
+        CommV1b.setRows(5);
+        jScrollPane8.setViewportView(CommV1b);
+
+        javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
+        jPanel4.setLayout(jPanel4Layout);
+        jPanel4Layout.setHorizontalGroup(
+            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel4Layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 310, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        jPanel4Layout.setVerticalGroup(
+            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 160, Short.MAX_VALUE)
+        );
+
+        tpReadV1.addTab("Hinten", jPanel4);
+
+        lblTopFlagsV2.setText("X|X|X|X|");
+
+        lblIVAlFlagsV2.setText("XXX|X|X");
+
+        lblCommFlag.setText("X");
+
+        lblDates.setText("XXXX|XX|XXXX|XX");
+
+        LblUPID20.setText("O|XXXX|XX|XX|XXXX|XXXX|XX|XX|");
+
+        lblShortCode.setText("XXXX");
+
+        lblCsumV2_14_28.setText("XXXXXXXXXXXXXX");
+
+        lblcsumv2_28.setText("XXXXXXXXXXXX");
+
+        lblCsumV20_14.setText("XXXXXXXXXXXXXX");
+
+        lblFlagsV.setText("|X|X|X|X|X|X|X|X|X|X|");
+
+        jLabel22.setText("2");
+
+        javax.swing.GroupLayout panelViewV2vorneLayout = new javax.swing.GroupLayout(panelViewV2vorne);
+        panelViewV2vorne.setLayout(panelViewV2vorneLayout);
+        panelViewV2vorneLayout.setHorizontalGroup(
+            panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelViewV2vorneLayout.createSequentialGroup()
+                        .addComponent(lblTopFlagsV2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(lblIVAlFlagsV2))
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(67, 67, 67)
+                        .addComponent(LblUPID20)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 76, Short.MAX_VALUE)
+                        .addComponent(jLabel22))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelViewV2vorneLayout.createSequentialGroup()
+                        .addComponent(lblDates)
+                        .addGap(18, 18, 18)
+                        .addComponent(lblFlagsV)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(lblShortCode))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(lblcsumv2_28)
+                            .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                .addComponent(lblCommFlag, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 16, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addComponent(lblCsumV2_14_28, javax.swing.GroupLayout.Alignment.TRAILING)
+                                .addComponent(lblCsumV20_14, javax.swing.GroupLayout.Alignment.TRAILING)))))
+                .addContainerGap())
+        );
+        panelViewV2vorneLayout.setVerticalGroup(
+            panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(lblTopFlagsV2)
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addContainerGap()
+                        .addComponent(lblIVAlFlagsV2)))
+                .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(11, 11, 11)
+                        .addComponent(lblCommFlag)
+                        .addGap(8, 8, 8)
+                        .addComponent(lblShortCode)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(jLabel22))
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(25, 25, 25)
+                        .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(lblDates)
+                            .addComponent(lblFlagsV))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(LblUPID20)))
+                .addGap(1, 1, 1)
+                .addComponent(lblCsumV20_14)
+                .addGap(3, 3, 3)
+                .addComponent(lblCsumV2_14_28)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(lblcsumv2_28)
+                .addContainerGap(16, Short.MAX_VALUE))
+        );
+
+        tpReadV2.addTab("Vorne", panelViewV2vorne);
+
+        CommV2b.setColumns(20);
+        CommV2b.setEditable(false);
+        CommV2b.setRows(5);
+        jScrollPane7.setViewportView(CommV2b);
+
+        javax.swing.GroupLayout panehViewV2HintenLayout = new javax.swing.GroupLayout(panehViewV2Hinten);
+        panehViewV2Hinten.setLayout(panehViewV2HintenLayout);
+        panehViewV2HintenLayout.setHorizontalGroup(
+            panehViewV2HintenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panehViewV2HintenLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 309, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        panehViewV2HintenLayout.setVerticalGroup(
+            panehViewV2HintenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panehViewV2HintenLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 138, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+
+        tpReadV2.addTab("HInten", panehViewV2Hinten);
+
+        LSTUPids.setModel(new javax.swing.DefaultListModel());
+        LSTUPids.addMouseListener(new java.awt.event.MouseAdapter() {
+            public void mouseClicked(java.awt.event.MouseEvent evt) {
+                LSTUPidsMouseClicked(evt);
+            }
+        });
+        jScrollPane6.setViewportView(LSTUPids);
+
+        jLabel19.setText("List of avail UPIDs");
+
+        btnRefresh.setText("Refresh");
+        btnRefresh.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnRefreshActionPerformed(evt);
+            }
+        });
+
+        jSeparator2.setOrientation(javax.swing.SwingConstants.VERTICAL);
+        jSeparator2.setToolTipText("");
+
+        javax.swing.GroupLayout pBrowseLayout = new javax.swing.GroupLayout(pBrowse);
+        pBrowse.setLayout(pBrowseLayout);
+        pBrowseLayout.setHorizontalGroup(
+            pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pBrowseLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(jLabel19)
+                    .addComponent(btnRefresh)
+                    .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 170, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addGap(27, 27, 27)
+                .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(tpReadV1, javax.swing.GroupLayout.PREFERRED_SIZE, 335, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(tpReadV2, javax.swing.GroupLayout.PREFERRED_SIZE, 334, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addContainerGap(838, Short.MAX_VALUE))
+        );
+        pBrowseLayout.setVerticalGroup(
+            pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pBrowseLayout.createSequentialGroup()
+                .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(pBrowseLayout.createSequentialGroup()
+                        .addGap(26, 26, 26)
+                        .addComponent(tpReadV1, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(18, 18, 18)
+                        .addComponent(tpReadV2, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addGroup(pBrowseLayout.createSequentialGroup()
+                        .addGap(7, 7, 7)
+                        .addComponent(btnRefresh)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(jLabel19)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 521, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                .addContainerGap(219, Short.MAX_VALUE))
+            .addComponent(jSeparator2)
+        );
+
+        tpOVW.addTab("Browse", pBrowse);
+
+        jScrollPane4.setViewportView(tpOVW);
+
+        jLabel18.setText("Reserved for Future Use");
+
+        btnSwitchMode.setText("Modus wexxeln");
+        btnSwitchMode.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnSwitchModeActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
+        jPanel5.setLayout(jPanel5Layout);
+        jPanel5Layout.setHorizontalGroup(
+            jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel5Layout.createSequentialGroup()
+                .addGap(69, 69, 69)
+                .addComponent(jLabel18)
+                .addContainerGap())
+            .addGroup(jPanel5Layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(btnSwitchMode, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+        );
+        jPanel5Layout.setVerticalGroup(
+            jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel5Layout.createSequentialGroup()
+                .addComponent(btnSwitchMode)
+                .addGap(92, 92, 92)
+                .addComponent(jLabel18)
+                .addContainerGap(493, Short.MAX_VALUE))
+        );
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jSeparator3, javax.swing.GroupLayout.DEFAULT_SIZE, 1201, Short.MAX_VALUE)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane4, javax.swing.GroupLayout.PREFERRED_SIZE, 870, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addGap(33, 33, 33)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 622, Short.MAX_VALUE)
+                    .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                .addGap(26, 26, 26)
+                .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap(30, Short.MAX_VALUE))
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    // <editor-fold defaultstate="collapsed" desc="evthandlers">
+    
+    private void SignActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_SignActionPerformed
+        //Variablen einlesen
+        values = new HashMap<>();
+        if(!cXoverride.isSelected())
+            validateKK(false);//UPID-included Cheksum erzeugen
+        String kommentar = "";
+        //Flags speichern: flags.put(Name, Wert)
+        //Hässliches IfElse-Konstrukt
+        //Flags mit jede Menge Ifs (Java-Meise)
+        //<editor-fold defaultstate="collapsed" desc="Nasty Code">
+        flags.put("SRC", "J");//Hardcoded für CreatedByJava-Flag
+        if(cXoverride.isSelected()) flags.put("src"," ");
+        /*
+        if(arightsNA.isSelected())
+        {    
+            flags.put("Arights","D");//D Durch Csum-Null ersetzen da dieser leeres Feld ersetzt!!!!!!!!!!!!
+        }
+        else
+        {
+            if(arightsU.isSelected())
+            {
+                flags.put("Arights","X");
+            }
+            else
+            {
+                if(arightsNV.isSelected())
+                {
+                    flags.put("Arights","N");
+                }
+                else
+                {
+                    flags.put("Arights","D");//Default
+                }
+            }
+        }*/
+        //############
+       /* if(vitA.isSelected())
+        {
+            flags.put("VIT","X");
+        }
+        else
+        {
+            if(vitL.isSelected())
+            {
+                flags.put("VIT","L");
+            }
+            else
+            {
+                if(vitNA.isSelected())
+                {
+                    flags.put("VIT","D");
+                }
+                else
+                {
+                    if(vitNV.isSelected())
+                    {
+                        flags.put("VIT","N");
+                    }
+                    else
+                    {
+                        flags.put("VIT","D");
+                    }
+                }
+            }
+        }
+        //
+        if(nse1U.isSelected())
+        {
+            flags.put("NSE1","X");
+        }
+        else
+        {
+            if(nse1L.isSelected())
+            {
+                flags.put("NSE1","L");
+            }
+            else
+            {
+                if(nse1NA.isSelected())
+                {
+                    flags.put("NSE1","D");
+                }
+                else
+                {
+                    if(nse1NV.isSelected())
+                    {
+                        flags.put("NSE1","N");
+                    }
+                    else
+                    {
+                        flags.put("NSE1","D");
+                    }
+                }
+            }
+        }
+        
+        
+        if(nse2U.isSelected())
+        {
+            flags.put("NSE2","X");
+        }
+        else
+        {
+            if(nse2L.isSelected())
+            {
+                flags.put("NSE2","L");
+            }
+            else
+            {
+                if(nse2NA.isSelected())
+                {
+                    flags.put("NSE2","D");
+                }
+                else
+                {
+                    if(nse2NV.isSelected())
+                    {
+                        flags.put("NSE2","N");
+                    }
+                    else
+                    {
+                        flags.put("NSE2","D");
+                    }
+                }
+            }
+        }
+        
+        
+        
+        if(alzrU.isSelected())
+        {
+            flags.put("ALZR","X");
+        }
+        else
+        {
+            if(alzrL.isSelected())
+            {
+                flags.put("ALZR","L");
+            }
+            else
+            {
+                if(alzrNA.isSelected())
+                {
+                    flags.put("ALZR","D");
+                }
+                else
+                {
+                    if(alzrNV.isSelected())
+                    {
+                        flags.put("ALZR","N");
+                    }
+                    else
+                    {
+                        if(alzrI.isSelected())
+                        {
+                            flags.put("ALZR","I");
+                        }
+                        else
+                        {
+                            flags.put("ALZR","D");
+                        }
+                    }    
+                }
+            }
+        }
+        
+        if(arightsNA.isSelected())
+        {
+            flags.put("Arights","D");
+        }
+        else
+        {
+            if(arightsNV.isSelected())
+            {
+                flags.put("Arights","N");
+            }
+            else
+            {
+                if(arightsU.isSelected())
+                {
+                    flags.put("Arights","X");
+                }
+                else
+                {
+                    flags.put("Arights","D");
+                }
+            }
+        }
+        
+        
+        if(nonsellableNA.isSelected())
+        {
+            flags.put("Nonsellable","D");
+        }
+        else
+        {
+            if(nonsellableU.isSelected())
+            {
+                flags.put("Nonsellable","X");
+            }
+            else
+            {
+                flags.put("Nonsellable","D");
+            }
+        }
+        
+        if(gaveAway2EXP.isSelected())
+        {
+            flags.put("gaveAway","B");
+        }
+        else
+        {
+            if(gaveAwayU.isSelected())
+            {
+                flags.put("gaveAway","X");
+            }
+            else
+            {
+                flags.put("gaveAway","D");
+            }
+        }
+        
+        if(mdfyU.isSelected())
+        {
+            flags.put("MDFY","X");
+        }
+        else
+        {
+            if(mdfyNV.isSelected())
+            {
+                flags.put("MDFY","N");
+            }
+            else
+            {
+                flags.put("MDFY","D");
+            }
+        }*/
+        //</editor-fold>
+        String upidtmp = txfUPID.getText();
+        values.put("UPIDPRE",upidtmp);
+        upidtmp = upidtmp.replace("-","");
+        values.put("UPIDCSE",upidtmp);
+        Tools.DebugHelperPrint(upidtmp, true, "UpidTK.enableDebug");
+        if(upidtmp.length()==20||upidtmp.length()==22)
+        {
+            upid.put("MFID",upidtmp.substring(0, 4));//String-Segmente laden
+            upid.put("PSC",upidtmp.substring(4, 6));
+            upid.put("UPID6",upidtmp.substring(6, 12));
+            upid.put("ZSC",upidtmp.substring(12, 14));
+            upid.put("SRC",upidtmp.substring(14, 16));
+            upid.put("CSUM",upidtmp.substring(16, 20));
+            if(upidtmp.length()==22)
+            {
+                upid.put("ADD",upidtmp.substring(20, 22));
+            }
+            upidtmp = null;
+        }
+        else
+        {
+            if(upidtmp.length()==21||upidtmp.length()==23)
+            {
+                upid.put("MFID",upidtmp.substring(0, 4));//String-Segmente laden
+                upid.put("PSC",upidtmp.substring(4, 6));
+                upid.put("UPID6",upidtmp.substring(6, 13));
+                upid.put("ZSC",upidtmp.substring(13, 15));
+                upid.put("SRC",upidtmp.substring(15, 17));
+                upid.put("CSUM",upidtmp.substring(17, 21));
+                if(upidtmp.length()==23)
+                {
+                    upid.put("ADD",upidtmp.substring(21, 23));
+                }
+                upidtmp = null;
+            }
+            else
+            {
+                Tools.dlg(true, "Error in Upid", "die Länge stimmt nicht!!!");
+                return;//TODO Add ereor-TRAP;
+            }
+        }
+        if(Version1)
+        {
+            values.put("CSUM", upidcsum.getText());
+            values.put("CSUM2", kkCsum.getText());
+        }
+        if(cxError.isSelected())
+        {
+            values.put("Err","1");
+        }
+        else
+        {
+            values.put("Err","0");
+        }
+        //parseComments
+        values.put("COMMC",Tools.getSHAString(Comment.getText()));
+        values.put("COMM",Comment.getText());
+        values.put("RDATC",Tools.getSHAString(regDAteN.getText()));
+        values.put("RDAT",regDAteN.getText());
+        values.put("BDAT",txBDAT.getText());
+        String val = internalValueN.getText();
+        val = val.replace(",",".");//akzeptiert Komma und Punkt;keine dezimaltrenner
+        values.put("IVAL", val);
+        //bakeFlags
+        String bakFlags1 = "";
+        for (String fs : FlagsAvail)
+        {
+            bakFlags1 += (flags.get(fs));
+        }
+        //length|cnt;
+        String bakFlags = bakFlags1.length()+"|"+bakFlags1;
+        Tools.DebugHelperPrint(bakFlags, true, "UpidTK.enableDebug");
+        values.put("BKFlag",bakFlags);
+        
+        String sKKvalidated = upidcsum.getText(); 
+        if(!cXoverride.isSelected())
+        {
+        sKKvalidated = validateKKC();
+        }
+        //values.put
+        
+        values.put("DPT","NotNeeded");
+        /*if(cxDepsNEeded.isSelected())
+        {
+            values.put("DPT","Enabled");
+        }*/
+                
+        
+        
+        tpOVW.setEnabledAt(1, true);
+        boolean cntne = Tools.dlg(true,"Csum berechnet: "+sKKvalidated,"Karteikaartenvorachau anzeigen?");
+        updatePreview();
+        if(cntne)
+        {
+            tpOVW.setSelectedIndex(1);
+        }
+        
+    }//GEN-LAST:event_SignActionPerformed
+   
+    private void UPAssistantActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_UPAssistantActionPerformed
+    {//GEN-HEADEREND:event_UPAssistantActionPerformed
+
+        new Thread(new Runnable()
+        {
+            
+            @Override
+            @SuppressWarnings({"CallToThreadDumpStack"})
+            public void run()
+            {
+                //PublicStorage.l.unlock();
+                      try
+               {
+                   // Thread.sleep(100);
+                    PublicStorage.l.lock();
+                }
+                catch (InterruptedException ex)
+                {
+                    ex.printStackTrace();
+                }
+               new UPIDAssistant().setVisible(true);
+                //UPIDAssistant.main(null);
+            }
+        }).start();
+      /*  try
+        {
+            Thread.sleep(1000);
+            
+        }
+        catch (InterruptedException ex)
+        {
+            System.err.println("Fick");
+            ex.printStackTrace();
+        }*/
+        
+        new Thread(new Runnable()
+        {
+
+            @SuppressWarnings("CallToThreadDumpStack")
+            @Override
+            public void run()
+            {
+                try
+                {
+                  /*  while (!PublicStorage.ready)
+                    {
+                        Thread.sleep(5)
+                    };*/
+                    Thread.sleep(1000);
+                    Tools.DebugHelperPrint("Fotze", true, "UpidTK.enableDebug");
+                    PublicStorage.l.lock();
+                    PublicStorage.l.unlock();//Erkennung ob fertig
+                    Object[] oupid = (Object[]) PublicStorage.STO.get("upid");
+                    String upid = ((String) oupid[0]) + ((String) oupid[1]) + ((String) oupid[2])
+                            + Tools.padLeft(2, ((Integer) oupid[3]).toString(), '0')
+                            + Tools.padLeft(2, ((Integer) oupid[4]).toString(), '0');
+                    txfUPID.setText(upid);
+                }
+                catch (Exception ex)
+                {
+                    ex.printStackTrace();
+                }
+            }
+        }).start();
+    }//GEN-LAST:event_UPAssistantActionPerformed
+
+    private void PreVerifyActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_PreVerifyActionPerformed
+    {//GEN-HEADEREND:event_PreVerifyActionPerformed
+        validateKK();
+    }//GEN-LAST:event_PreVerifyActionPerformed
+
+    private void versToggActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_versToggActionPerformed
+    {//GEN-HEADEREND:event_versToggActionPerformed
+        Version1 = !Version1;
+        cXoverride.setVisible(Version1);
+        //cxDepsNEeded.setVisible(Version1);
+        btnEnabOVR.setVisible(Version1);
+        lblBDAT.setVisible(!Version1);
+        txBDAT.setVisible(!Version1);
+        PreVerify.setEnabled(Version1);
+        if(Version1)
+        {
+            versTogg.setText("Version 1");
+        }
+        else
+        {
+            versTogg.setText("Version 2");
+        }
+    }//GEN-LAST:event_versToggActionPerformed
+
+    private void regDAteNActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_regDAteNActionPerformed
+    {//GEN-HEADEREND:event_regDAteNActionPerformed
+        if(regDAteN.getText().equals("DD.MM.YY"))
+        {
+            regDAteN.setText("");
+        }
+    }//GEN-LAST:event_regDAteNActionPerformed
+
+    private void btnSubmitToDbActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnSubmitToDbActionPerformed
+    {//GEN-HEADEREND:event_btnSubmitToDbActionPerformed
+        int version=2;
+        if(Version1) version=1;
+        String statement = "INSERT INTO upidlst(UPID20,version)Values('"+values.get("UPIDCSE")+"',"+version+")";
+        String getLinkageIDQuery = "SELECT LinkageID FROM upidlst where UPID20='"+values.get("UPIDCSE")+"'";
+        dbc.write(statement);
+        String LinkageID = dbc.querySingleCell(getLinkageIDQuery);
+        if(Version1)
+        {
+            createV1Dataset(LinkageID);
+
+            versToggActionPerformed(null);
+        }
+        else
+        {
+            createV2Dataset(LinkageID);
+        }
+        
+        txfUPID.setText("");
+        upidcsum.setText("");
+        kkCsum.setText("");
+        cxError.setSelected(false);
+        cXoverride.setSelected(false);
+        cXoverride.setEnabled(false);
+        Comment.setText("");
+        regDAteN.setText("DD.MM.YY");
+        internalValueN.setText("");
+        txBDAT.setText("DD.MM.YY");
+        btnRefreshActionPerformed(evt);
+    }//GEN-LAST:event_btnSubmitToDbActionPerformed
+
+    private void btnPachUpidAssistActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnPachUpidAssistActionPerformed
+    {//GEN-HEADEREND:event_btnPachUpidAssistActionPerformed
+        new UpdateAssistant().setVisible(true);
+    }//GEN-LAST:event_btnPachUpidAssistActionPerformed
+
+    private void btnRefreshActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnRefreshActionPerformed
+    {//GEN-HEADEREND:event_btnRefreshActionPerformed
+        ((DefaultListModel)(LSTUPids.getModel())).clear();
+        String[] availUPIDs = dbc.querySIngleColumn("Select UPID20 from upidlst");
+        
+        for (String elem : availUPIDs)
+        {
+            ((DefaultListModel)(LSTUPids.getModel())).addElement(elem);
+        }
+        
+    }//GEN-LAST:event_btnRefreshActionPerformed
+
+    private void LSTUPidsMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_LSTUPidsMouseClicked
+    {//GEN-HEADEREND:event_LSTUPidsMouseClicked
+        loadDataSet((String)LSTUPids.getSelectedValue());
+    }//GEN-LAST:event_LSTUPidsMouseClicked
+
+    private void btnEnabOVRActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnEnabOVRActionPerformed
+    {//GEN-HEADEREND:event_btnEnabOVRActionPerformed
+        cXoverride.setEnabled(true);
+    }//GEN-LAST:event_btnEnabOVRActionPerformed
+
+    private void btnSwitchModeActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnSwitchModeActionPerformed
+    {//GEN-HEADEREND:event_btnSwitchModeActionPerformed
+        Ifatzeh.sel.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_btnSwitchModeActionPerformed
+    
+    //</editor-fold>
+
+    // <editor-fold defaultstate="collapsed" desc="Manual Codessssss">
+    private boolean CSUMMED = false;
+    public String validateKK()
+    {
+        return validateKK(true);
+    }
+    
+    public String validateKK(boolean all)
+    {
+        
+        @SuppressWarnings("LocalVariableHidesMemberVariable")
+        String upid = txfUPID.getText();
+        //if(CSUMMED)
+       // {
+            int ml=16;
+            if(!(upid.length()-4<ml))
+            {
+                ml=upid.length()-4;
+            }
+            upid=upid.substring(0,ml);//entfernt womöglich schon berechnete CSUM
+       // }
+        CSUMMED=true;
+        String ret = Tools.runSingleCmd(false, true,true, "X:\\cpltoExx\\upidgen.exe "+upid+" X");
+        Tools.DebugHelperPrint(ret, true, "UpidTK.enableDebug");
+        String[] CSUMS = ret.split("\\|");
+        boolean setErr = false;
+        
+        try
+        {
+        kkCsum.setText(CSUMS[2]);
+        if(all) 
+            values.put("KKSC",CSUMS[2]);
+        }
+        catch(Exception e)//HACK um SVNP abzufangen
+        {
+          //  e.printStackTrace();//war ne Fliegenklatsche :-)
+            setErr=true;
+        }
+        if(setErr)
+        {
+            int csulength = CSUMS[0].length();
+            CSUMS[0] = CSUMS[0].substring(csulength-4);
+            if(all)values.put("KKSC","---");
+        }
+        
+        
+        txfUPID.setText(upid+CSUMS[0]);
+        if(all)
+        {
+            upidcsum.setText(CSUMS[1]);
+            values.put("KKCS",CSUMS[1]);
+            cxError.setSelected(setErr);
+        }
+        
+        
+               
+        return CSUMS[1];
+    }
+    
+    public String[] ValuesAvailToBake = {"UPIDCSE","CSUM","CSUM2","Err","COMM","RDAT","BDAT","IVAL","BKFlag"};//BKflag=bakedflags
+    public String validateKKC()
+    {
+        if(Version1)
+        {
+            return validateKK();
+        }
+        String bakedAll = "";
+        for (String sel : ValuesAvailToBake)
+        {
+            bakedAll+=values.get(sel);
+        }
+        String CSum = Tools.getSHAString(bakedAll);
+        values.put("CSUM",CSum);
+        String SC = CSum.substring(0,4);
+        //Kurzcode in HExxx
+        values.put("CSUM2",SC);
+        return CSum;
+    }
+    
+    public void updatePreview()
+    {
+        String lulpid=values.get("UPIDCSE");
+        LBLMDIF.setText("|"+lulpid.substring(0,4)+"|");
+        MFIDV2.setText("|"+lulpid.substring(0,4)+"|");
+        
+        //#######
+        String upcs = lulpid.substring(lulpid.length()-4);
+        LBLUpidCsum.setText(""+upcs.substring(0,2)+"|"+upcs.substring(2)+"|");
+        UpidCsum2.setText(""+upcs.substring(0,2)+"|"+upcs.substring(2)+"|");
+        
+        lblUPID8.setText(lulpid.substring(4,8)+"|"+lulpid.substring(8,12)+"|");
+        upid8v2.setText(lulpid.substring(4,8)+"|"+lulpid.substring(8,12)+"|");
+        
+        lblNumercArea.setText(lulpid.substring(12,14)+"|"+lulpid.substring(14,16));
+        upidNumVals.setText(lulpid.substring(12,14)+"|"+lulpid.substring(14,16));
+        
+        LBLCsum.setText(values.get("CSUM"));
+        txaCsumV2.setText(values.get("CSUM"));
+        
+        lblKcode.setText(values.get("CSUM2"));
+        KKV2.setText(values.get("CSUM2"));
+        if(values.get("Err").equals("1"))
+        {
+            lblKcode.setText("---");
+        }
+        
+        
+        String regDate = values.get("RDAT");
+        Tools.DebugHelperPrint(regDate, true, "UpidTK.enableDebug");
+        regDate=regDate.substring(0,2)+"|"+regDate.substring(3,5)+"|"+regDate.substring(6);
+        Tools.DebugHelperPrint(regDate, true, "UpidTK.enableDebug");
+        lblRegDate.setText(regDate);
+        regDate = regDate.substring(0,2)+regDate.substring(3);
+        RwgDAteV2.setText(regDate);
+        
+        String Buydat = values.get("BDAT");
+        try{
+        Buydat = Buydat.substring(0,2)+Buydat.substring(3,5)+"|"+Buydat.substring(6);
+        BuyDateV2.setText(Buydat);
+        }
+        catch (Exception e)
+        {
+            
+        }
+        //verfügbare flags: {"SRC","VIT","NSE1","NSE2","ALZR","Arights","Nonsellable","gaveAway","MDFY"};
+        String FlagList = values.get("BKFlag").substring(2);
+        lblV1AlzrUnselll.setText(FlagList.substring(6,7)+"|"+values.get("IVAL"));
+        lblFlagLine.setText(FlagList.substring(4,5)+"|  |"+FlagList.substring(8,9)+"|"+FlagList.substring(5,6)+"|  |  |"
+                    +FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|");
+        lblGaveAwayPr.setText(FlagList.substring(7,8));
+        ival_alzr_src.setText(values.get("IVAL")+"|"+FlagList.substring(4,5)+"|"+FlagList.substring(0,1));
+        FlagRow.setText("|"+FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|"+FlagList.substring(6,7)+"|X|X|X|X|X|X|");
+        //NSE1|2|VIT|Unsellble
+        
+        String depNeeded = "D";
+        if(values.get("DPT").equals("Enabled"))
+            depNeeded="X";
+        
+        mdfyrow.setText(FlagList.substring(8,9)+"|"+FlagList.substring(7,8)+"|"+FlagList.substring(5,6)+"|"+depNeeded);
+        //MDFY|GaveAway|Arighta
+        //ival_alzr_src
+
+        
+        //maXlabelLength=50 zeichen
+        //#######################
+        String comment =values.get("COMM");
+        CommV2.setText(comment);
+        String commentFrontPP= "", CommFront = "",COmmRest = "";
+        try
+        {
+        commentFrontPP = comment.substring(0,50);
+        CommFront = "";
+        COmmRest = comment.substring(50);
+        Tools.DebugHelperPrint(commentFrontPP, true, "UpidTK.enableDebug");
+        }
+        catch(Exception e)
+        {
+        commentFrontPP = comment;
+        CommFront = "";
+        COmmRest = "";
+        }
+              
+        String[] commentL1 = commentFrontPP.split("\n");
+        Tools.DebugHelperPrint(commentL1[0]+"|"+commentL1[1], true, "UpidTK.enableDebug");
+        String CommentRest = "";
+        if(commentL1.length>1)
+        {
+            CommFront = commentL1[0];
+            for (int i = 1; i < commentL1.length; i++)
+            {
+                CommentRest += commentL1[i]+"\n";
+                
+            }
+            
+            COmmRest = CommentRest+COmmRest;
+        }
+        else//splittet auf Leerzeichen
+        {            
+            String[] CommLZS = commentFrontPP.split(" ");
+            COmmRest = CommLZS[CommLZS.length-1]; 
+            if(CommLZS.length>1)
+            {
+                for (int i = 0; i < CommLZS.length-2; i++)
+                {
+                    CommFront += CommLZS[i]+" ";
+                }
+                CommFront += CommLZS[CommLZS.length-2];
+            }
+        }
+    lblCommentsLine1.setText(CommFront);
+    txaCommRest.setText(COmmRest);
+    if(Version1)
+    {
+        previewVers1.setVisible(true);
+        previewVers2.setVisible(false);
+    }
+    else
+    {
+        previewVers1.setVisible(false);
+        previewVers2.setVisible(true);
+    }
+    
+        
+        
+    }
+    
+    //valuepalette = {"UPIDCSE","CSUM","CSUM2","Err","COMM","RDAT","BDAT","IVAL","BKFlag"};//BKflag=bakedflags
+    
+    public void createV1Dataset(String LinkageID)
+    {
+        if(values.get("Err").equals("1"))
+        {
+            values.put("CSUM2","-1");
+        }
+        //UPID20,LinkageID,CSUM,Shortcode,Eingangsdatum,FlagValues,Remarks,Version=1
+        String writeIn = "INSERT INTO objreg1 values('"+values.get("UPIDCSE")+"',\n"
+                +LinkageID+","+values.get("CSUM")+",\n"
+                +values.get("CSUM2")+",'"+values.get("RDAT")+"',\n"
+                +"'"+values.get("BKFlag")+"',\n"
+                +"'"+values.get("COMM")+"',1,"+values.get("IVAL")+")";//TODO:Db erledigen
+        dbc.write(writeIn);
+        
+    }
+    
+    //UPID20,LinakgeID,CSUM,Shortcode,EIngangsdatum,Kaufdatum,FlagVals,Remarks,Version,DependencyLinks
+    public void createV2Dataset(String LinkageID)
+    {
+        String writeIn = "INSERT INTO objreg2 values('"+values.get("UPIDCSE")+"',\n"
+                +LinkageID+",'"+values.get("CSUM")+"',\n'"
+                +values.get("CSUM2")+"','"+values.get("RDAT")+"',\n"+
+                "'"+values.get("BDAT")+"','"+values.get("BKFlag")+"',\n"
+                +"'"+values.get("COMM")+"',2,'"+values.get("DPT")+"',"+values.get("IVAL")+")";
+        dbc.write(writeIn);
+        
+    }        
+    
+    public void loadDataSet(String UPID)
+    {
+        String Version = dbc.querySingleCell("SELECT Version FROM upidlst where UPID20='"+UPID+"'");
+        int vv = Integer.valueOf(Version);
+        String[] row = null;
+        if(vv>1)
+        {
+            row = dbc.querySingleRow("Select * from  objreg2 where UPID20='"+UPID+"';",11);
+            //UPID20,LinkageID,CSUM,Shortcode,kaufdatum,Registrierdatum,FlagValues,Remarks,Version,DependencyValues,IVAL;
+            CommV2b.setText(row[7]);
+            Tools.DebugHelperPrint(row[7], true, "UpidTK.enableDebug");
+            String temp = row[0];
+            String UPID20P = "|O|"+temp.substring(0,4)+"|"+temp.substring(16,18)+"|"+temp.substring(18,20)+"|"
+                    +temp.substring(4,8)+"|"+temp.substring(8,12)+"|"+temp.substring(12,14)+"|"+temp.substring(14,16)+"|";
+            LblUPID20.setText(UPID20P);
+            temp = row[2];
+            Tools.DebugHelperPrint(temp, true, "UpidTK.enableDebug");
+            lblCsumV20_14.setText(temp.substring(0,14));
+            lblCsumV2_14_28.setText(temp.substring(14,28));
+            lblcsumv2_28.setText(temp.substring(28));
+            lblShortCode.setText(row[3]);
+            String FlagList = row[6].substring(2);
+            lblFlagsV.setText("|"+FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|"+FlagList.substring(6,7)+"|X|X|X|X|X|X|");
+                    
+                    
+                    //FlagList.substring(4,5)+"|  |"+FlagList.substring(8,9)+"|"+FlagList.substring(3,4)+"|  |  |"
+                   // +FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|");
+        
+            lblIVAlFlagsV2.setText(row[10]+"|"+FlagList.substring(4,5)+"|"+FlagList.substring(0,1));
+            
+            String depExists = "D";
+            if(row[8].equals("NotImplementedYet"))
+                depExists="N";
+            if(row[8].equals("Enabled"))
+                depExists="X";
+            
+            
+            lblTopFlagsV2.setText(FlagList.substring(8,9)+"|"+FlagList.substring(7,8)+"|"+FlagList.substring(5,6)+"|"+depExists);
+            String buydate= row[4];//4
+            String regdate= row[5];//5
+            String dates=buydate.substring(0,2)+buydate.substring(3,5)+"|"+buydate.substring(6,8)+"|"
+                    +regdate.substring(0,2)+regdate.substring(3,5)+"|"+regdate.substring(6,8);
+            lblDates.setText(dates);
+            tpReadV2.setVisible(true);
+            tpReadV1.setVisible(false);
+        }
+        else
+        {
+            String temp;                        //
+            //UPID20,LinkageID,CSUM,Shortcode,Eingangsdatum,FlagValues,Remarks,Version,IVAL
+            row = dbc.querySingleRow("Select * from  objreg1 where UPID20='"+UPID+"';",9);
+            CommV1b.setText(row[6]);
+            temp=row[0];
+            String UPID20P = "|O|"+temp.substring(0,4)+"|"+temp.substring(16,18)+"|"+temp.substring(18,20)+"|"
+                    +temp.substring(4,8)+"|"+temp.substring(8,12)+"|"+temp.substring(12,14)+"|"+temp.substring(14,16)+"|";
+            upid20V1.setText(UPID20P);
+            BCSUM1.setText(row[2]);
+            temp = row[3];
+            if(temp.equals("-1")) temp="---";
+            SCV1.setText(temp);
+            String FlagList = row[5].substring(2);
+            lblFlagsRow.setText(FlagList.substring(4,5)+"|  |"+FlagList.substring(8,9)+"|"+FlagList.substring(5,6)+"|  |  |"
+                    +FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|");
+            lblIVAl.setText(FlagList.substring(6,7)+"|"+row[8]);
+            lblGaveAwayBrow.setText(FlagList.substring(7,8));
+            lblSrcB.setText(FlagList.substring(0,1));
+            String regdate=row[4];
+            lblRegDatBrow.setText(regdate.substring(0,2)+regdate.substring(3,5)+"|"+regdate.substring(6,8));
+            tpReadV1.setVisible(true);
+            tpReadV2.setVisible(false);
+        }       
+    }
+
+    public static void main(String args[]) {
+        java.awt.EventQueue.invokeLater(new Runnable() {
+
+            @Override
+            public void run() {
+                new IfatzehChgFlag().setVisible(true);
+            }
+        });
+    }
+    //</editor-fold>
+    
+    // <editor-fold defaultstate="collapsed" desc="GUI_Vars">
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.ButtonGroup ALZRBG;
+    private javax.swing.ButtonGroup ArightsBG;
+    private javax.swing.JLabel BCSUM1;
+    private javax.swing.JLabel BuyDateV2;
+    private javax.swing.JLabel CommExists;
+    private javax.swing.JTextArea CommV1b;
+    private javax.swing.JTextArea CommV2;
+    private javax.swing.JTextArea CommV2b;
+    private javax.swing.JTextArea Comment;
+    private javax.swing.JLabel DependencyDataset;
+    private javax.swing.JLabel FlagRow;
+    private javax.swing.JPanel FlagsnStuff;
+    private javax.swing.ButtonGroup GaveAWayBG;
+    private javax.swing.JLabel KKV2;
+    private javax.swing.JLabel LBLCsum;
+    private javax.swing.JLabel LBLMDIF;
+    private javax.swing.JLabel LBLUpidCsum;
+    private javax.swing.JList LSTUPids;
+    private javax.swing.JLabel LblUPID20;
+    private javax.swing.JPanel LowerCOntainer;
+    private javax.swing.ButtonGroup MDFYBG;
+    private javax.swing.JLabel MFIDV2;
+    private javax.swing.ButtonGroup NSE1BG;
+    private javax.swing.ButtonGroup NSE2BG;
+    private javax.swing.ButtonGroup NonsellableBG;
+    private javax.swing.JButton PreVerify;
+    private javax.swing.JLabel RegDate;
+    private javax.swing.JLabel RwgDAteV2;
+    private javax.swing.JLabel SCV1;
+    private javax.swing.JButton Sign;
+    private javax.swing.JButton UPAssistant;
+    private javax.swing.JLabel UpidCsum2;
+    private javax.swing.JPanel UpperArea;
+    private javax.swing.ButtonGroup VIT1BG;
+    private javax.swing.JButton btnEnabOVR;
+    private javax.swing.JButton btnPachUpidAssist;
+    private javax.swing.JButton btnRefresh;
+    private javax.swing.JButton btnSubmitToDb;
+    private javax.swing.JButton btnSwitchMode;
+    private javax.swing.JCheckBox cXoverride;
+    private javax.swing.JCheckBox cxError;
+    private javax.swing.JLabel internalValue;
+    private javax.swing.JTextField internalValueN;
+    private javax.swing.JLabel ival_alzr_src;
+    private javax.swing.JLabel jLabel1;
+    private javax.swing.JLabel jLabel14;
+    private javax.swing.JLabel jLabel15;
+    private javax.swing.JLabel jLabel16;
+    private javax.swing.JLabel jLabel17;
+    private javax.swing.JLabel jLabel18;
+    private javax.swing.JLabel jLabel19;
+    private javax.swing.JLabel jLabel21;
+    private javax.swing.JLabel jLabel22;
+    private javax.swing.JLabel jLabel3;
+    private javax.swing.JLabel jLabel4;
+    private javax.swing.JPanel jPanel1;
+    private javax.swing.JPanel jPanel2;
+    private javax.swing.JPanel jPanel3;
+    private javax.swing.JPanel jPanel4;
+    private javax.swing.JPanel jPanel5;
+    private javax.swing.JScrollPane jScrollPane1;
+    private javax.swing.JScrollPane jScrollPane2;
+    private javax.swing.JScrollPane jScrollPane3;
+    private javax.swing.JScrollPane jScrollPane4;
+    private javax.swing.JScrollPane jScrollPane5;
+    private javax.swing.JScrollPane jScrollPane6;
+    private javax.swing.JScrollPane jScrollPane7;
+    private javax.swing.JScrollPane jScrollPane8;
+    private javax.swing.JScrollPane jScrollPane9;
+    private javax.swing.JSeparator jSeparator2;
+    private javax.swing.JSeparator jSeparator3;
+    private javax.swing.JTable jTable1;
+    private javax.swing.JTextField kkCsum;
+    private javax.swing.JLabel lblBDAT;
+    private javax.swing.JLabel lblCommFlag;
+    private javax.swing.JLabel lblCommentsLine1;
+    private javax.swing.JLabel lblCsumV20_14;
+    private javax.swing.JLabel lblCsumV2_14_28;
+    private javax.swing.JLabel lblDates;
+    private javax.swing.JLabel lblFlagLine;
+    private javax.swing.JLabel lblFlagsRow;
+    private javax.swing.JLabel lblFlagsV;
+    private javax.swing.JLabel lblGaveAwayBrow;
+    private javax.swing.JLabel lblGaveAwayPr;
+    private javax.swing.JLabel lblGenViaPHP;
+    private javax.swing.JLabel lblIVAl;
+    private javax.swing.JLabel lblIVAlFlagsV2;
+    private javax.swing.JLabel lblKcode;
+    private javax.swing.JLabel lblNumercArea;
+    private javax.swing.JLabel lblRegDatBrow;
+    private javax.swing.JLabel lblRegDate;
+    private javax.swing.JLabel lblShortCode;
+    private javax.swing.JLabel lblSrcB;
+    private javax.swing.JLabel lblTopFlagsV2;
+    private javax.swing.JLabel lblUPID8;
+    private javax.swing.JLabel lblV1AlzrUnselll;
+    private javax.swing.JLabel lblcsumv2_28;
+    private javax.swing.JLabel mdfyrow;
+    private javax.swing.JPanel pBrowse;
+    private javax.swing.JPanel pIp;
+    private javax.swing.JPanel pPreview;
+    private javax.swing.JPanel panehViewV2Hinten;
+    private javax.swing.JPanel panelKKPreviewB;
+    private javax.swing.JPanel panelKKPreviewF;
+    private javax.swing.JPanel panelViewV2vorne;
+    private javax.swing.JTabbedPane previewVers1;
+    private javax.swing.JTabbedPane previewVers2;
+    private javax.swing.JTextField regDAteN;
+    private javax.swing.JTabbedPane tpOVW;
+    private javax.swing.JTabbedPane tpReadV1;
+    private javax.swing.JTabbedPane tpReadV2;
+    private javax.swing.JTextField txBDAT;
+    private javax.swing.JTextArea txaCommRest;
+    private javax.swing.JTextArea txaCsumV2;
+    private javax.swing.JTextField txfUPID;
+    private javax.swing.JLabel upid20V1;
+    private javax.swing.JLabel upid8v2;
+    private javax.swing.JLabel upidNumVals;
+    private javax.swing.JTextField upidcsum;
+    private javax.swing.JToggleButton versTogg;
+    // End of variables declaration//GEN-END:variables
+    //</editor-fold>
+}

+ 2063 - 0
UpidTK/src/de/nplusc/upidgen/IfatzehRTR.form

@@ -0,0 +1,2063 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.3" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <NonVisualComponents>
+    <Component class="javax.swing.ButtonGroup" name="VIT1BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NSE1BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NSE2BG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="ALZRBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="ArightsBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="NonsellableBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="GaveAWayBG">
+    </Component>
+    <Component class="javax.swing.ButtonGroup" name="MDFYBG">
+    </Component>
+  </NonVisualComponents>
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="3"/>
+    <Property name="title" type="java.lang.String" value="UPIDMgr"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Component id="jSeparator3" alignment="0" pref="1201" max="32767" attributes="0"/>
+          <Group type="102" alignment="0" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Component id="jScrollPane4" min="-2" pref="870" max="-2" attributes="0"/>
+              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+              <Component id="jPanel5" max="32767" attributes="0"/>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" attributes="0">
+              <EmptySpace min="-2" pref="33" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                  <Component id="jScrollPane4" pref="622" max="32767" attributes="0"/>
+                  <Component id="jPanel5" max="32767" attributes="0"/>
+              </Group>
+              <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+              <Component id="jSeparator3" min="-2" pref="2" max="-2" attributes="0"/>
+              <EmptySpace pref="30" max="32767" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Component class="javax.swing.JSeparator" name="jSeparator3">
+    </Component>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane4">
+      <Properties>
+        <Property name="horizontalScrollBarPolicy" type="int" value="31"/>
+      </Properties>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Container class="javax.swing.JTabbedPane" name="tpOVW">
+
+          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+          <SubComponents>
+            <Container class="javax.swing.JPanel" name="pIp">
+              <Properties>
+                <Property name="maximumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+                  <Dimension value="[800, 800]"/>
+                </Property>
+                <Property name="name" type="java.lang.String" value="" noResource="true"/>
+                <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+                  <Dimension value="[800, 800]"/>
+                </Property>
+              </Properties>
+              <AuxValues>
+                <AuxValue name="JavaCodeGenerator_InitCodePost" type="java.lang.String" value="pIp.setSize(800,800);"/>
+              </AuxValues>
+              <Constraints>
+                <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                  <JTabbedPaneConstraints tabName="Input" toolTip="">
+                    <Property name="tabTitle" type="java.lang.String" value="Input"/>
+                    <Property name="tabToolTip" type="java.lang.String" value=""/>
+                  </JTabbedPaneConstraints>
+                </Constraint>
+              </Constraints>
+
+              <Layout>
+                <DimensionLayout dim="0">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="UpperArea" min="-2" max="-2" attributes="0"/>
+                              <Component id="LowerCOntainer" alignment="0" min="-2" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace pref="570" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+                <DimensionLayout dim="1">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Component id="UpperArea" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace min="-2" pref="58" max="-2" attributes="0"/>
+                          <Component id="LowerCOntainer" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace min="0" pref="215" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+              </Layout>
+              <SubComponents>
+                <Container class="javax.swing.JPanel" name="LowerCOntainer">
+
+                  <Layout>
+                    <DimensionLayout dim="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace min="-2" pref="93" max="-2" attributes="0"/>
+                              <Component id="FlagsnStuff" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="32767" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <EmptySpace min="-2" pref="69" max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Component id="jLabel14" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane1" min="-2" pref="337" max="-2" attributes="0"/>
+                              </Group>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" attributes="0">
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" attributes="0">
+                                              <EmptySpace min="-2" pref="2" max="-2" attributes="0"/>
+                                              <Component id="internalValue" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <Component id="lblBDAT" alignment="0" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                          <Component id="internalValueN" pref="231" max="32767" attributes="0"/>
+                                          <Component id="txBDAT" max="32767" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                  </Group>
+                                  <Group type="102" attributes="0">
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" attributes="0">
+                                              <Component id="RegDate" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="regDAteN" min="-2" pref="231" max="-2" attributes="0"/>
+                                              <EmptySpace min="0" pref="126" max="32767" attributes="0"/>
+                                          </Group>
+                                          <Component id="Sign" alignment="1" max="32767" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                    <DimensionLayout dim="1">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="FlagsnStuff" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace min="-2" pref="9" max="-2" attributes="0"/>
+                              <Component id="jLabel14" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                  <Group type="102" attributes="0">
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="RegDate" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="regDAteN" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="internalValue" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="internalValueN" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Component id="lblBDAT" alignment="0" min="-2" max="-2" attributes="0"/>
+                                          <Component id="txBDAT" alignment="0" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace max="32767" attributes="0"/>
+                                      <Component id="Sign" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Component id="jScrollPane1" min="-2" pref="109" max="-2" attributes="0"/>
+                              </Group>
+                              <EmptySpace pref="35" max="32767" attributes="0"/>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                  </Layout>
+                  <SubComponents>
+                    <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+                      <AuxValues>
+                        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                      </AuxValues>
+
+                      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                      <SubComponents>
+                        <Component class="javax.swing.JTextArea" name="Comment">
+                          <Properties>
+                            <Property name="columns" type="int" value="20"/>
+                            <Property name="rows" type="int" value="5"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Component class="javax.swing.JLabel" name="RegDate">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="RegDate"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="regDAteN">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="DD.MM.YY"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="regDAteNActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="internalValue">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="internalValue"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="Sign">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Sign and Create"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="SignActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="internalValueN">
+                    </Component>
+                    <Container class="javax.swing.JPanel" name="FlagsnStuff">
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="16" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="1" attributes="0">
+                                              <Component id="jLabel12" min="-2" max="-2" attributes="0"/>
+                                              <Group type="103" alignment="1" groupAlignment="0" attributes="0">
+                                                  <Group type="102" alignment="0" attributes="0">
+                                                      <EmptySpace min="-2" pref="29" max="-2" attributes="0"/>
+                                                      <Component id="jLabel11" min="-2" max="-2" attributes="0"/>
+                                                  </Group>
+                                                  <Component id="jLabel10" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Component id="NonSellable" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              <Component id="GaveAwAY" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              <Component id="MDFY" alignment="1" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Component id="jLabel9" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              <Component id="jLabel5" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              <Component id="jLabel2" alignment="1" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="FlagGrid" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="32767" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="1" attributes="0">
+                                  <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                  <Component id="cxDepsNEeded" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="52" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
+                                  <Component id="cxDepsNEeded" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <Component id="jLabel2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="jLabel5" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="15" max="-2" attributes="0"/>
+                                          <Component id="jLabel9" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Component id="jLabel10" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="16" max="-2" attributes="0"/>
+                                          <Component id="jLabel11" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace pref="16" max="32767" attributes="0"/>
+                                          <Component id="jLabel12" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Component id="NonSellable" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Component id="GaveAwAY" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Component id="MDFY" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="20" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" attributes="0">
+                                          <Component id="FlagGrid" max="32767" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="MDFY">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="MDFY"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="GaveAwAY">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="GaveAWay"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel12">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="Arights"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel9">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="NSE1"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel10">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="NSE2"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel5">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="VIT"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="Flags"/>
+                          </Properties>
+                        </Component>
+                        <Container class="javax.swing.JPanel" name="FlagGrid">
+
+                          <Layout>
+                            <DimensionLayout dim="0">
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" attributes="0">
+                                      <EmptySpace max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" attributes="0">
+                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                  <Group type="102" alignment="0" attributes="0">
+                                                      <Group type="103" groupAlignment="0" attributes="0">
+                                                          <Component id="alzrNA" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="nse2NA" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="nse1NA" min="-2" max="-2" attributes="0"/>
+                                                      </Group>
+                                                      <EmptySpace min="43" pref="43" max="-2" attributes="0"/>
+                                                      <Group type="103" groupAlignment="0" attributes="0">
+                                                          <Component id="nse2U" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="nse1U" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="vitA" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="alzrU" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                      </Group>
+                                                  </Group>
+                                                  <Group type="102" alignment="0" attributes="0">
+                                                      <Group type="103" groupAlignment="0" attributes="0">
+                                                          <Component id="gaveawayNA" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="mdfyNA" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="nonsellableNA" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="vitNA" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="arightsNA" min="-2" max="-2" attributes="0"/>
+                                                      </Group>
+                                                      <EmptySpace min="-2" pref="43" max="-2" attributes="0"/>
+                                                      <Group type="103" groupAlignment="0" attributes="0">
+                                                          <Component id="gaveAwayU" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="mdfyU" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="nonsellableU" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                          <Component id="arightsU" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                      </Group>
+                                                  </Group>
+                                              </Group>
+                                              <EmptySpace min="-2" pref="48" max="-2" attributes="0"/>
+                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                  <Component id="mdfyNV" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="vitNV" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="nse1NV" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="nse2NV" min="-2" max="-2" attributes="0"/>
+                                                  <Group type="102" attributes="0">
+                                                      <Component id="alzrNV" min="-2" max="-2" attributes="0"/>
+                                                      <EmptySpace min="-2" pref="67" max="-2" attributes="0"/>
+                                                      <Component id="alzrI" min="-2" max="-2" attributes="0"/>
+                                                  </Group>
+                                                  <Component id="arightsNV" alignment="0" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <EmptySpace max="32767" attributes="0"/>
+                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                  <Group type="103" alignment="1" groupAlignment="0" attributes="0">
+                                                      <Group type="102" attributes="0">
+                                                          <Component id="gaveAway2EXP" min="-2" max="-2" attributes="0"/>
+                                                          <EmptySpace min="-2" pref="43" max="-2" attributes="0"/>
+                                                      </Group>
+                                                      <Component id="alzrL" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                  </Group>
+                                                  <Component id="nse2L" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="nse1L" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="vitL" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                          <Group type="102" attributes="0">
+                                              <Component id="Disabled" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace min="-2" pref="23" max="-2" attributes="0"/>
+                                              <Component id="jLabel6" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="jLabel8" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace min="-2" pref="19" max="-2" attributes="0"/>
+                                              <Component id="jLabel7" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="jLabel13" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="Lite" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <EmptySpace pref="43" max="32767" attributes="0"/>
+                                  </Group>
+                              </Group>
+                            </DimensionLayout>
+                            <DimensionLayout dim="1">
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Group type="103" groupAlignment="1" attributes="0">
+                                          <Group type="103" alignment="1" groupAlignment="3" attributes="0">
+                                              <Component id="Disabled" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="jLabel6" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="jLabel8" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <Group type="103" alignment="1" groupAlignment="3" attributes="0">
+                                              <Component id="jLabel7" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="jLabel13" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="Lite" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <EmptySpace max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="1" attributes="0">
+                                          <Component id="alzrI" min="-2" max="-2" attributes="0"/>
+                                          <Group type="102" attributes="0">
+                                              <Group type="103" groupAlignment="1" attributes="0">
+                                                  <Component id="vitL" min="-2" max="-2" attributes="0"/>
+                                                  <Group type="103" groupAlignment="0" attributes="0">
+                                                      <Component id="vitNA" min="-2" max="-2" attributes="0"/>
+                                                      <Component id="vitA" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                  </Group>
+                                                  <Component id="vitNV" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <EmptySpace min="-2" pref="9" max="-2" attributes="0"/>
+                                              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                                  <Group type="102" attributes="0">
+                                                      <Group type="103" groupAlignment="0" attributes="0">
+                                                          <Group type="103" groupAlignment="0" attributes="0">
+                                                              <Component id="nse1NV" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                              <Group type="102" alignment="1" attributes="0">
+                                                                  <EmptySpace min="-2" pref="3" max="-2" attributes="0"/>
+                                                                  <Component id="nse1L" min="-2" max="-2" attributes="0"/>
+                                                              </Group>
+                                                          </Group>
+                                                          <Component id="nse1U" alignment="0" min="-2" max="-2" attributes="0"/>
+                                                      </Group>
+                                                      <EmptySpace max="32767" attributes="0"/>
+                                                      <Group type="103" groupAlignment="0" attributes="0">
+                                                          <Group type="102" alignment="1" attributes="0">
+                                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                                  <Component id="nse2U" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                                  <Component id="nse2NV" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                              </Group>
+                                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                                  <Component id="alzrU" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                                  <Component id="alzrNV" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                              </Group>
+                                                          </Group>
+                                                          <Group type="102" alignment="1" attributes="0">
+                                                              <Component id="nse2L" min="-2" max="-2" attributes="0"/>
+                                                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                                              <Component id="alzrL" min="-2" max="-2" attributes="0"/>
+                                                          </Group>
+                                                      </Group>
+                                                  </Group>
+                                                  <Group type="102" attributes="0">
+                                                      <Component id="nse1NA" min="-2" max="-2" attributes="0"/>
+                                                      <EmptySpace min="-2" pref="7" max="-2" attributes="0"/>
+                                                      <Component id="nse2NA" min="-2" max="-2" attributes="0"/>
+                                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                                      <Component id="alzrNA" min="-2" max="-2" attributes="0"/>
+                                                  </Group>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                      <EmptySpace max="32767" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Component id="arightsU" alignment="1" min="-2" max="-2" attributes="0"/>
+                                          <Component id="arightsNA" alignment="1" min="-2" max="-2" attributes="0"/>
+                                          <Component id="arightsNV" alignment="1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Component id="nonsellableNA" alignment="1" min="-2" max="-2" attributes="0"/>
+                                          <Component id="nonsellableU" alignment="1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" attributes="0">
+                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                  <Component id="gaveAwayU" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="gaveawayNA" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                              <Group type="103" groupAlignment="1" attributes="0">
+                                                  <Component id="mdfyU" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="mdfyNA" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="mdfyNV" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                          <Component id="gaveAway2EXP" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                              </Group>
+                            </DimensionLayout>
+                          </Layout>
+                          <SubComponents>
+                            <Component class="javax.swing.JRadioButton" name="nse2NA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE2BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="gaveAway2EXP">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="GaveAWayBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="gaveAwayU">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="GaveAWayBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse2NV">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE2BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="arightsU">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ArightsBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="vitA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="VIT1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse1NA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="alzrNA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ALZRBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nonsellableU">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NonsellableBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse1U">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="vitNA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="VIT1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="vitL">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="VIT1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse2L">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE2BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="alzrL">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ALZRBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="vitNV">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="VIT1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="arightsNV">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ArightsBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="mdfyNA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="MDFYBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="mdfyNV">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="MDFYBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="gaveawayNA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="GaveAWayBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse1NV">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="arightsNA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ArightsBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="mdfyU">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="MDFYBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="alzrI">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ALZRBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="alzrU">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ALZRBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nonsellableNA">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NonsellableBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse1L">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE1BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="alzrNV">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="ALZRBG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JRadioButton" name="nse2U">
+                              <Properties>
+                                <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+                                  <ComponentRef name="NSE2BG"/>
+                                </Property>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JLabel" name="jLabel13">
+                              <Properties>
+                                <Property name="text" type="java.lang.String" value="@2.Exmplr"/>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JLabel" name="jLabel7">
+                              <Properties>
+                                <Property name="text" type="java.lang.String" value="Included from other"/>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JLabel" name="jLabel8">
+                              <Properties>
+                                <Property name="text" type="java.lang.String" value="Not Avialable"/>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JLabel" name="Disabled">
+                              <Properties>
+                                <Property name="text" type="java.lang.String" value="Not active"/>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JLabel" name="jLabel6">
+                              <Properties>
+                                <Property name="text" type="java.lang.String" value="Set"/>
+                              </Properties>
+                            </Component>
+                            <Component class="javax.swing.JLabel" name="Lite">
+                              <Properties>
+                                <Property name="text" type="java.lang.String" value="Lite"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                        <Component class="javax.swing.JLabel" name="jLabel11">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="ALZR"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="NonSellable">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="Nonsellable"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JCheckBox" name="cxDepsNEeded">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="Dependencys vorhanden"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Component class="javax.swing.JLabel" name="jLabel14">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Comments"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="txBDAT">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="DD.MM.YY"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="lblBDAT">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="BuyDate"/>
+                      </Properties>
+                    </Component>
+                  </SubComponents>
+                </Container>
+                <Container class="javax.swing.JPanel" name="UpperArea">
+
+                  <Layout>
+                    <DimensionLayout dim="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="UPAssistant" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace min="-2" pref="24" max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Component id="jLabel4" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="10" max="-2" attributes="0"/>
+                                      <Component id="upidcsum" min="-2" pref="118" max="-2" attributes="0"/>
+                                      <EmptySpace type="separate" max="-2" attributes="0"/>
+                                      <Component id="PreVerify" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace min="-2" pref="27" max="-2" attributes="0"/>
+                                      <Component id="versTogg" min="-2" max="-2" attributes="0"/>
+                                      <EmptySpace max="32767" attributes="0"/>
+                                  </Group>
+                                  <Group type="102" alignment="1" attributes="0">
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" alignment="0" attributes="0">
+                                              <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                              <Component id="kkCsum" min="-2" pref="65" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="cxError" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <Group type="102" alignment="0" attributes="0">
+                                              <Component id="jLabel1" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="txfUPID" min="-2" pref="125" max="-2" attributes="0"/>
+                                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                              <Component id="jLabel15" min="-2" pref="85" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <EmptySpace pref="114" max="32767" attributes="0"/>
+                                      <Group type="103" groupAlignment="0" attributes="0">
+                                          <Group type="102" alignment="0" attributes="0">
+                                              <Component id="btnNewUPID" min="-2" pref="103" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="btnPachUpidAssist" min="-2" pref="132" max="-2" attributes="0"/>
+                                          </Group>
+                                          <Group type="102" alignment="0" attributes="0">
+                                              <Component id="btnEnabOVR" min="-2" max="-2" attributes="0"/>
+                                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                                              <Component id="cXoverride" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <EmptySpace min="-2" pref="51" max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                    <DimensionLayout dim="1">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Group type="103" groupAlignment="3" attributes="0">
+                                  <Component id="UPAssistant" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jLabel1" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="txfUPID" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="jLabel15" alignment="3" max="32767" attributes="0"/>
+                              </Group>
+                              <Group type="103" groupAlignment="0" attributes="0">
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="PreVerify" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="jLabel4" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="upidcsum" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="versTogg" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                      <Group type="103" groupAlignment="3" attributes="0">
+                                          <Component id="kkCsum" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="cxError" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="cXoverride" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          <Component id="btnEnabOVR" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <Group type="102" alignment="0" attributes="0">
+                                      <EmptySpace min="-2" pref="29" max="-2" attributes="0"/>
+                                      <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                              <EmptySpace max="-2" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <Group type="103" groupAlignment="3" attributes="0">
+                                  <Component id="btnPachUpidAssist" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  <Component id="btnNewUPID" alignment="3" min="-2" max="-2" attributes="0"/>
+                              </Group>
+                              <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                          </Group>
+                      </Group>
+                    </DimensionLayout>
+                  </Layout>
+                  <SubComponents>
+                    <Component class="javax.swing.JLabel" name="jLabel15">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="V1-ONLY"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="jLabel3">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="KK-Csum"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="UPAssistant">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Asistent"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="UPAssistantActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JCheckBox" name="cxError">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Error?"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="jLabel1">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Upid-20"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="txfUPID">
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="upidcsum">
+                    </Component>
+                    <Component class="javax.swing.JTextField" name="kkCsum">
+                    </Component>
+                    <Component class="javax.swing.JButton" name="PreVerify">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="PreVerify"/>
+                        <Property name="enabled" type="boolean" value="false"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="PreVerifyActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JLabel" name="jLabel4">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Checksum"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JToggleButton" name="versTogg">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Version 2"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="versToggActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="btnPachUpidAssist">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="UPIDAssistant updaten"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPachUpidAssistActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JCheckBox" name="cXoverride">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="IgnoreCsums"/>
+                        <Property name="enabled" type="boolean" value="false"/>
+                      </Properties>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="btnEnabOVR">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Manuell erzeugt?"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnEnabOVRActionPerformed"/>
+                      </Events>
+                    </Component>
+                    <Component class="javax.swing.JButton" name="btnNewUPID">
+                      <Properties>
+                        <Property name="text" type="java.lang.String" value="Neue UPID"/>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnNewUPIDActionPerformed"/>
+                      </Events>
+                    </Component>
+                  </SubComponents>
+                </Container>
+              </SubComponents>
+            </Container>
+            <Container class="javax.swing.JPanel" name="pPreview">
+              <Constraints>
+                <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                  <JTabbedPaneConstraints tabName="Preview">
+                    <Property name="tabTitle" type="java.lang.String" value="Preview"/>
+                  </JTabbedPaneConstraints>
+                </Constraint>
+              </Constraints>
+
+              <Layout>
+                <DimensionLayout dim="0">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                      <Component id="previewVers1" max="32767" attributes="0"/>
+                                      <Component id="previewVers2" max="32767" attributes="0"/>
+                                  </Group>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="19" max="-2" attributes="0"/>
+                                  <Component id="btnSubmitToDb" min="-2" pref="386" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                          <EmptySpace pref="1014" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+                <DimensionLayout dim="1">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" alignment="0" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Component id="previewVers1" min="-2" pref="165" max="-2" attributes="0"/>
+                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                          <Component id="previewVers2" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                          <Component id="btnSubmitToDb" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace pref="475" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+              </Layout>
+              <SubComponents>
+                <Container class="javax.swing.JTabbedPane" name="previewVers1">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="panelKKPreviewF">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorderseite">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorderseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Component id="lblGaveAwayPr" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="40" max="-2" attributes="0"/>
+                                  <Component id="lblV1AlzrUnselll" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="32767" attributes="0"/>
+                                  <Component id="lblGenViaPHP" min="-2" pref="23" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="1" attributes="0">
+                                      <Component id="LBLCsum" min="-2" max="-2" attributes="0"/>
+                                      <Group type="102" attributes="0">
+                                          <Component id="jLabel16" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="102" alignment="0" attributes="0">
+                                                  <Component id="LBLMDIF" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                                  <Component id="LBLUpidCsum" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Component id="lblRegDate" alignment="0" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="102" attributes="0">
+                                                  <Component id="lblUPID8" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                                  <Component id="lblNumercArea" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Group type="102" attributes="0">
+                                                  <Component id="lblFlagLine" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace min="-2" pref="45" max="-2" attributes="0"/>
+                                                  <Component id="lblKcode" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace pref="50" max="32767" attributes="0"/>
+                              </Group>
+                              <Component id="lblCommentsLine1" alignment="1" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="lblV1AlzrUnselll" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblGenViaPHP" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblGaveAwayPr" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <EmptySpace min="-2" pref="14" max="-2" attributes="0"/>
+                                  <Component id="lblCommentsLine1" min="-2" max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="lblRegDate" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblFlagLine" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace min="-2" pref="31" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="jLabel16" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="LBLMDIF" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="LBLUpidCsum" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblUPID8" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblNumercArea" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="16" max="-2" attributes="0"/>
+                                          <Component id="lblKcode" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace max="32767" attributes="0"/>
+                                  <Component id="LBLCsum" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="62" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="jLabel16">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LBLMDIF">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LBLUpidCsum">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblUPID8">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblNumercArea">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblRegDate">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblFlagLine">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|  |X|X|     |X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblKcode">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCommentsLine1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LBLCsum">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblV1AlzrUnselll">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|XXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblGenViaPHP">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblGaveAwayPr">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="panelKKPreviewB">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="R&#xfc;ckseite">
+                            <Property name="tabTitle" type="java.lang.String" value="R&#xfc;ckseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane2" pref="298" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jScrollPane2" alignment="0" pref="137" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane2">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="txaCommRest">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+                <Component class="javax.swing.JButton" name="btnSubmitToDb">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value=".submit()"/>
+                  </Properties>
+                  <Events>
+                    <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSubmitToDbActionPerformed"/>
+                  </Events>
+                </Component>
+                <Container class="javax.swing.JTabbedPane" name="previewVers2">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="jPanel2">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorderseite">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorderseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="102" alignment="0" attributes="0">
+                                                  <Component id="mdfyrow" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                                  <Component id="DependencyDataset" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                              <Group type="102" alignment="0" attributes="0">
+                                                  <Component id="RwgDAteV2" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                                  <Component id="BuyDateV2" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                                  <Component id="FlagRow" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                          <EmptySpace pref="34" max="32767" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Group type="103" alignment="1" groupAlignment="0" max="-2" attributes="0">
+                                                  <Group type="102" alignment="1" attributes="0">
+                                                      <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                                      <Component id="CommExists" min="-2" pref="22" max="-2" attributes="0"/>
+                                                      <EmptySpace max="-2" attributes="0"/>
+                                                  </Group>
+                                                  <Group type="102" attributes="0">
+                                                      <Component id="ival_alzr_src" min="-2" max="-2" attributes="0"/>
+                                                      <EmptySpace min="-2" pref="21" max="-2" attributes="0"/>
+                                                  </Group>
+                                              </Group>
+                                              <Group type="102" alignment="1" attributes="0">
+                                                  <Component id="KKV2" min="-2" max="-2" attributes="0"/>
+                                                  <EmptySpace max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <Component id="jLabel17" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Component id="MFIDV2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="UpidCsum2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="upid8v2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="upidNumVals" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="jLabel21" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Component id="jScrollPane5" min="-2" pref="133" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="mdfyrow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="DependencyDataset" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="ival_alzr_src" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="CommExists" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="KKV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="FlagRow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="BuyDateV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="RwgDAteV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="jLabel17" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="MFIDV2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="UpidCsum2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="upid8v2" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="upidNumVals" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace min="0" pref="18" max="32767" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Component id="jLabel21" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane5" min="-2" pref="39" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="mdfyrow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="x  |x  |X  |X  |"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="DependencyDataset">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXX|XXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="ival_alzr_src">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X   |X  |X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="CommExists">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="RwgDAteV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="BuyDateV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="FlagRow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|X|X|X|X|X|X|X|X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="KKV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel17">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="MFIDV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="UpidCsum2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="upid8v2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XXXX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="upidNumVals">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane5">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="txaCsumV2">
+                              <Properties>
+                                <Property name="columns" type="int" value="40"/>
+                                <Property name="rows" type="int" value="1"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                        <Component class="javax.swing.JLabel" name="jLabel21">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="2"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="jPanel1">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="R&#xfc;ckseite">
+                            <Property name="tabTitle" type="java.lang.String" value="R&#xfc;ckseite"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane3" pref="298" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jScrollPane3" alignment="0" pref="143" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane3">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="CommV2">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+              </SubComponents>
+            </Container>
+            <Container class="javax.swing.JPanel" name="pBrowse">
+              <Properties>
+                <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+                  <Dimension value="[800, 588]"/>
+                </Property>
+              </Properties>
+              <Constraints>
+                <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                  <JTabbedPaneConstraints tabName="Browse">
+                    <Property name="tabTitle" type="java.lang.String" value="Browse"/>
+                  </JTabbedPaneConstraints>
+                </Constraint>
+              </Constraints>
+
+              <Layout>
+                <DimensionLayout dim="0">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" attributes="0">
+                          <EmptySpace max="-2" attributes="0"/>
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jLabel19" alignment="0" min="-2" max="-2" attributes="0"/>
+                              <Component id="btnRefresh" alignment="0" min="-2" max="-2" attributes="0"/>
+                              <Component id="jScrollPane6" alignment="0" min="-2" pref="170" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace min="-2" pref="18" max="-2" attributes="0"/>
+                          <Component id="jSeparator1" min="-2" max="-2" attributes="0"/>
+                          <EmptySpace min="-2" pref="34" max="-2" attributes="0"/>
+                          <Group type="103" groupAlignment="1" attributes="0">
+                              <Component id="tpReadV1" alignment="1" min="-2" pref="335" max="-2" attributes="0"/>
+                              <Component id="tpReadV2" alignment="1" min="-2" pref="334" max="-2" attributes="0"/>
+                          </Group>
+                          <EmptySpace min="-2" pref="108" max="-2" attributes="0"/>
+                          <Component id="jButton1" min="-2" pref="144" max="-2" attributes="0"/>
+                          <EmptySpace pref="598" max="32767" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+                <DimensionLayout dim="1">
+                  <Group type="103" groupAlignment="0" attributes="0">
+                      <Group type="102" alignment="0" attributes="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+                                          <Component id="tpReadV1" min="-2" pref="188" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="57" max="-2" attributes="0"/>
+                                          <Component id="jButton1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="tpReadV2" min="-2" pref="188" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="7" max="-2" attributes="0"/>
+                                  <Component id="btnRefresh" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                  <Component id="jLabel19" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                  <Component id="jScrollPane6" min="-2" pref="521" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="1" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jSeparator1" min="-2" pref="576" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                          <EmptySpace min="-2" pref="1" max="-2" attributes="0"/>
+                      </Group>
+                  </Group>
+                </DimensionLayout>
+              </Layout>
+              <SubComponents>
+                <Container class="javax.swing.JTabbedPane" name="tpReadV1">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="jPanel3">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorne">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorne"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="1" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Component id="BCSUM1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" attributes="0">
+                                          <Component id="lblRegDatBrow" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="105" max="-2" attributes="0"/>
+                                          <Component id="lblFlagsRow" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace pref="45" max="32767" attributes="0"/>
+                                          <Component id="SCV1" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace min="-2" pref="26" max="-2" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="19" max="-2" attributes="0"/>
+                                  <Component id="upid20V1" min="-2" pref="230" max="-2" attributes="0"/>
+                                  <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                              </Group>
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace min="-2" pref="9" max="-2" attributes="0"/>
+                                  <Component id="lblGaveAwayBrow" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace type="separate" max="-2" attributes="0"/>
+                                  <Component id="lblIVAl" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="32767" attributes="0"/>
+                                  <Component id="lblSrcB" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="42" max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="3" attributes="0">
+                                      <Component id="lblSrcB" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblIVAl" alignment="3" min="-2" max="-2" attributes="0"/>
+                                      <Component id="lblGaveAwayBrow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                  </Group>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" attributes="0">
+                                          <EmptySpace min="-2" pref="39" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="lblRegDatBrow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblFlagsRow" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace pref="43" max="32767" attributes="0"/>
+                                          <Component id="upid20V1" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="36" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="31" max="-2" attributes="0"/>
+                                          <Component id="SCV1" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="BCSUM1" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="lblIVAl">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblSrcB">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblRegDatBrow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblFlagsRow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|  |X|X|  |  |X|X|X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="upid20V1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O|XXXX|XX|XX|XXXX|XXXX|XX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="SCV1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="BCSUM1">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblGaveAwayBrow">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="jPanel4">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Hinten">
+                            <Property name="tabTitle" type="java.lang.String" value="Hinten"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane8" pref="310" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Component id="jScrollPane8" alignment="0" pref="160" max="32767" attributes="0"/>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane8">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="CommV1b">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+                <Container class="javax.swing.JTabbedPane" name="tpReadV2">
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
+                  <SubComponents>
+                    <Container class="javax.swing.JPanel" name="panelViewV2vorne">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="Vorne">
+                            <Property name="tabTitle" type="java.lang.String" value="Vorne"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <Component id="lblTopFlagsV2" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="lblIVAlFlagsV2" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="67" max="-2" attributes="0"/>
+                                          <Component id="LblUPID20" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace pref="76" max="32767" attributes="0"/>
+                                          <Component id="jLabel22" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <Component id="lblDates" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace type="separate" max="-2" attributes="0"/>
+                                          <Component id="lblFlagsV" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="lblShortCode" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="1" attributes="0">
+                                          <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                                          <Group type="103" groupAlignment="0" attributes="0">
+                                              <Component id="lblcsumv2_28" min="-2" max="-2" attributes="0"/>
+                                              <Group type="103" groupAlignment="0" attributes="0">
+                                                  <Component id="lblCommFlag" alignment="1" min="-2" pref="16" max="-2" attributes="0"/>
+                                                  <Component id="lblCsumV2_14_28" alignment="1" min="-2" max="-2" attributes="0"/>
+                                                  <Component id="lblCsumV20_14" alignment="1" min="-2" max="-2" attributes="0"/>
+                                              </Group>
+                                          </Group>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Component id="lblTopFlagsV2" min="-2" max="-2" attributes="0"/>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace max="-2" attributes="0"/>
+                                          <Component id="lblIVAlFlagsV2" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="11" max="-2" attributes="0"/>
+                                          <Component id="lblCommFlag" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace min="-2" pref="8" max="-2" attributes="0"/>
+                                          <Component id="lblShortCode" min="-2" max="-2" attributes="0"/>
+                                          <EmptySpace max="32767" attributes="0"/>
+                                          <Component id="jLabel22" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                      <Group type="102" alignment="0" attributes="0">
+                                          <EmptySpace min="-2" pref="25" max="-2" attributes="0"/>
+                                          <Group type="103" groupAlignment="3" attributes="0">
+                                              <Component id="lblDates" alignment="3" min="-2" max="-2" attributes="0"/>
+                                              <Component id="lblFlagsV" alignment="3" min="-2" max="-2" attributes="0"/>
+                                          </Group>
+                                          <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                                          <Component id="LblUPID20" min="-2" max="-2" attributes="0"/>
+                                      </Group>
+                                  </Group>
+                                  <EmptySpace min="-2" pref="1" max="-2" attributes="0"/>
+                                  <Component id="lblCsumV20_14" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace min="-2" pref="3" max="-2" attributes="0"/>
+                                  <Component id="lblCsumV2_14_28" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="lblcsumv2_28" min="-2" max="-2" attributes="0"/>
+                                  <EmptySpace pref="16" max="32767" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Component class="javax.swing.JLabel" name="lblTopFlagsV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X|X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblIVAlFlagsV2">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXX|X|X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCommFlag">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="X"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblDates">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX|XX|XXXX|XX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="LblUPID20">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="O|XXXX|XX|XX|XXXX|XXXX|XX|XX|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblShortCode">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCsumV2_14_28">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblcsumv2_28">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblCsumV20_14">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="XXXXXXXXXXXXXX"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="lblFlagsV">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="|X|X|X|X|X|X|X|X|X|X|"/>
+                          </Properties>
+                        </Component>
+                        <Component class="javax.swing.JLabel" name="jLabel22">
+                          <Properties>
+                            <Property name="text" type="java.lang.String" value="2"/>
+                          </Properties>
+                        </Component>
+                      </SubComponents>
+                    </Container>
+                    <Container class="javax.swing.JPanel" name="panehViewV2Hinten">
+                      <Constraints>
+                        <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
+                          <JTabbedPaneConstraints tabName="HInten">
+                            <Property name="tabTitle" type="java.lang.String" value="HInten"/>
+                          </JTabbedPaneConstraints>
+                        </Constraint>
+                      </Constraints>
+
+                      <Layout>
+                        <DimensionLayout dim="0">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane7" pref="309" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                        <DimensionLayout dim="1">
+                          <Group type="103" groupAlignment="0" attributes="0">
+                              <Group type="102" alignment="0" attributes="0">
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Component id="jScrollPane7" pref="138" max="32767" attributes="0"/>
+                                  <EmptySpace max="-2" attributes="0"/>
+                              </Group>
+                          </Group>
+                        </DimensionLayout>
+                      </Layout>
+                      <SubComponents>
+                        <Container class="javax.swing.JScrollPane" name="jScrollPane7">
+                          <AuxValues>
+                            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                          </AuxValues>
+
+                          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                          <SubComponents>
+                            <Component class="javax.swing.JTextArea" name="CommV2b">
+                              <Properties>
+                                <Property name="columns" type="int" value="20"/>
+                                <Property name="editable" type="boolean" value="false"/>
+                                <Property name="rows" type="int" value="5"/>
+                              </Properties>
+                            </Component>
+                          </SubComponents>
+                        </Container>
+                      </SubComponents>
+                    </Container>
+                  </SubComponents>
+                </Container>
+                <Container class="javax.swing.JScrollPane" name="jScrollPane6">
+                  <AuxValues>
+                    <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+                  </AuxValues>
+
+                  <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+                  <SubComponents>
+                    <Component class="javax.swing.JList" name="LSTUPids">
+                      <Properties>
+                        <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+                          <Connection code="new javax.swing.DefaultListModel()" type="code"/>
+                        </Property>
+                      </Properties>
+                      <Events>
+                        <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="LSTUPidsMouseClicked"/>
+                      </Events>
+                    </Component>
+                  </SubComponents>
+                </Container>
+                <Component class="javax.swing.JLabel" name="jLabel19">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value="List of avail UPIDs"/>
+                  </Properties>
+                </Component>
+                <Component class="javax.swing.JButton" name="btnRefresh">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value="Refresh"/>
+                  </Properties>
+                  <Events>
+                    <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnRefreshActionPerformed"/>
+                  </Events>
+                </Component>
+                <Component class="javax.swing.JButton" name="jButton1">
+                  <Properties>
+                    <Property name="text" type="java.lang.String" value="Bearbeiten"/>
+                  </Properties>
+                  <Events>
+                    <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jButton1ActionPerformed"/>
+                  </Events>
+                </Component>
+                <Component class="javax.swing.JSeparator" name="jSeparator1">
+                  <Properties>
+                    <Property name="orientation" type="int" value="1"/>
+                  </Properties>
+                </Component>
+              </SubComponents>
+            </Container>
+          </SubComponents>
+        </Container>
+      </SubComponents>
+    </Container>
+    <Container class="javax.swing.JPanel" name="jPanel5">
+
+      <Layout>
+        <DimensionLayout dim="0">
+          <Group type="103" groupAlignment="0" attributes="0">
+              <Group type="102" attributes="0">
+                  <EmptySpace min="-2" pref="69" max="-2" attributes="0"/>
+                  <Component id="jLabel18" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace max="32767" attributes="0"/>
+              </Group>
+              <Group type="102" alignment="0" attributes="0">
+                  <EmptySpace max="-2" attributes="0"/>
+                  <Component id="btnSwitchMode" max="32767" attributes="0"/>
+              </Group>
+          </Group>
+        </DimensionLayout>
+        <DimensionLayout dim="1">
+          <Group type="103" groupAlignment="0" attributes="0">
+              <Group type="102" alignment="0" attributes="0">
+                  <Component id="btnSwitchMode" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace min="-2" pref="92" max="-2" attributes="0"/>
+                  <Component id="jLabel18" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace pref="493" max="32767" attributes="0"/>
+              </Group>
+          </Group>
+        </DimensionLayout>
+      </Layout>
+      <SubComponents>
+        <Component class="javax.swing.JLabel" name="jLabel18">
+          <Properties>
+            <Property name="text" type="java.lang.String" value="Reserved for Future Use"/>
+          </Properties>
+        </Component>
+        <Component class="javax.swing.JButton" name="btnSwitchMode">
+          <Properties>
+            <Property name="text" type="java.lang.String" value="Modus wexxeln"/>
+          </Properties>
+          <Events>
+            <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSwitchModeActionPerformed"/>
+          </Events>
+        </Component>
+      </SubComponents>
+    </Container>
+  </SubComponents>
+</Form>

+ 2448 - 0
UpidTK/src/de/nplusc/upidgen/IfatzehRTR.java

@@ -0,0 +1,2448 @@
+package de.nplusc.upidgen;
+
+
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Tools;
+import java.util.HashMap;
+import javax.swing.DefaultListModel;
+import javax.swing.UIManager;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/*
+ * Ifatzeh.java
+ *
+ * Created on 01.12.2011, 18:47:36
+ */
+/**
+ *
+ * @author LH
+ */
+public class IfatzehRTR extends javax.swing.JFrame {
+        HashMap<String,String> flags  = new  HashMap<>();
+        HashMap<String,String> upid   = new  HashMap<>();
+        HashMap<String,String> values = new  HashMap<>();
+        private static DBWriter dbc = PublicStorage.dbc;
+    /** Creates new form Ifatzeh */
+    public IfatzehRTR() {
+                                try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        initComponents();
+        pPreview.setVisible(false);
+        tpOVW.setEnabledAt(1,false);
+        tpReadV2.setVisible(false);
+        tpReadV1.setVisible(false);
+        btnRefreshActionPerformed(null);
+        cXoverride.setVisible(false);
+        btnEnabOVR.setVisible(false);
+        btnNewUPID.setVisible(false);
+    }
+    String[] FlagsAvail = {"SRC","VIT","NSE1","NSE2","ALZR","Arights","Nonsellable","gaveAway","MDFY"};
+    boolean Version1 = false;
+    /** This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents()
+    {
+
+        VIT1BG = new javax.swing.ButtonGroup();
+        NSE1BG = new javax.swing.ButtonGroup();
+        NSE2BG = new javax.swing.ButtonGroup();
+        ALZRBG = new javax.swing.ButtonGroup();
+        ArightsBG = new javax.swing.ButtonGroup();
+        NonsellableBG = new javax.swing.ButtonGroup();
+        GaveAWayBG = new javax.swing.ButtonGroup();
+        MDFYBG = new javax.swing.ButtonGroup();
+        jSeparator3 = new javax.swing.JSeparator();
+        jScrollPane4 = new javax.swing.JScrollPane();
+        tpOVW = new javax.swing.JTabbedPane();
+        pIp = new javax.swing.JPanel();
+        LowerCOntainer = new javax.swing.JPanel();
+        jScrollPane1 = new javax.swing.JScrollPane();
+        Comment = new javax.swing.JTextArea();
+        RegDate = new javax.swing.JLabel();
+        regDAteN = new javax.swing.JTextField();
+        internalValue = new javax.swing.JLabel();
+        Sign = new javax.swing.JButton();
+        internalValueN = new javax.swing.JTextField();
+        FlagsnStuff = new javax.swing.JPanel();
+        MDFY = new javax.swing.JLabel();
+        GaveAwAY = new javax.swing.JLabel();
+        jLabel12 = new javax.swing.JLabel();
+        jLabel9 = new javax.swing.JLabel();
+        jLabel10 = new javax.swing.JLabel();
+        jLabel5 = new javax.swing.JLabel();
+        jLabel2 = new javax.swing.JLabel();
+        FlagGrid = new javax.swing.JPanel();
+        nse2NA = new javax.swing.JRadioButton();
+        gaveAway2EXP = new javax.swing.JRadioButton();
+        gaveAwayU = new javax.swing.JRadioButton();
+        nse2NV = new javax.swing.JRadioButton();
+        arightsU = new javax.swing.JRadioButton();
+        vitA = new javax.swing.JRadioButton();
+        nse1NA = new javax.swing.JRadioButton();
+        alzrNA = new javax.swing.JRadioButton();
+        nonsellableU = new javax.swing.JRadioButton();
+        nse1U = new javax.swing.JRadioButton();
+        vitNA = new javax.swing.JRadioButton();
+        vitL = new javax.swing.JRadioButton();
+        nse2L = new javax.swing.JRadioButton();
+        alzrL = new javax.swing.JRadioButton();
+        vitNV = new javax.swing.JRadioButton();
+        arightsNV = new javax.swing.JRadioButton();
+        mdfyNA = new javax.swing.JRadioButton();
+        mdfyNV = new javax.swing.JRadioButton();
+        gaveawayNA = new javax.swing.JRadioButton();
+        nse1NV = new javax.swing.JRadioButton();
+        arightsNA = new javax.swing.JRadioButton();
+        mdfyU = new javax.swing.JRadioButton();
+        alzrI = new javax.swing.JRadioButton();
+        alzrU = new javax.swing.JRadioButton();
+        nonsellableNA = new javax.swing.JRadioButton();
+        nse1L = new javax.swing.JRadioButton();
+        alzrNV = new javax.swing.JRadioButton();
+        nse2U = new javax.swing.JRadioButton();
+        jLabel13 = new javax.swing.JLabel();
+        jLabel7 = new javax.swing.JLabel();
+        jLabel8 = new javax.swing.JLabel();
+        Disabled = new javax.swing.JLabel();
+        jLabel6 = new javax.swing.JLabel();
+        Lite = new javax.swing.JLabel();
+        jLabel11 = new javax.swing.JLabel();
+        NonSellable = new javax.swing.JLabel();
+        cxDepsNEeded = new javax.swing.JCheckBox();
+        jLabel14 = new javax.swing.JLabel();
+        txBDAT = new javax.swing.JTextField();
+        lblBDAT = new javax.swing.JLabel();
+        UpperArea = new javax.swing.JPanel();
+        jLabel15 = new javax.swing.JLabel();
+        jLabel3 = new javax.swing.JLabel();
+        UPAssistant = new javax.swing.JButton();
+        cxError = new javax.swing.JCheckBox();
+        jLabel1 = new javax.swing.JLabel();
+        txfUPID = new javax.swing.JTextField();
+        upidcsum = new javax.swing.JTextField();
+        kkCsum = new javax.swing.JTextField();
+        PreVerify = new javax.swing.JButton();
+        jLabel4 = new javax.swing.JLabel();
+        versTogg = new javax.swing.JToggleButton();
+        btnPachUpidAssist = new javax.swing.JButton();
+        cXoverride = new javax.swing.JCheckBox();
+        btnEnabOVR = new javax.swing.JButton();
+        btnNewUPID = new javax.swing.JButton();
+        pPreview = new javax.swing.JPanel();
+        previewVers1 = new javax.swing.JTabbedPane();
+        panelKKPreviewF = new javax.swing.JPanel();
+        jLabel16 = new javax.swing.JLabel();
+        LBLMDIF = new javax.swing.JLabel();
+        LBLUpidCsum = new javax.swing.JLabel();
+        lblUPID8 = new javax.swing.JLabel();
+        lblNumercArea = new javax.swing.JLabel();
+        lblRegDate = new javax.swing.JLabel();
+        lblFlagLine = new javax.swing.JLabel();
+        lblKcode = new javax.swing.JLabel();
+        lblCommentsLine1 = new javax.swing.JLabel();
+        LBLCsum = new javax.swing.JLabel();
+        lblV1AlzrUnselll = new javax.swing.JLabel();
+        lblGenViaPHP = new javax.swing.JLabel();
+        lblGaveAwayPr = new javax.swing.JLabel();
+        panelKKPreviewB = new javax.swing.JPanel();
+        jScrollPane2 = new javax.swing.JScrollPane();
+        txaCommRest = new javax.swing.JTextArea();
+        btnSubmitToDb = new javax.swing.JButton();
+        previewVers2 = new javax.swing.JTabbedPane();
+        jPanel2 = new javax.swing.JPanel();
+        mdfyrow = new javax.swing.JLabel();
+        DependencyDataset = new javax.swing.JLabel();
+        ival_alzr_src = new javax.swing.JLabel();
+        CommExists = new javax.swing.JLabel();
+        RwgDAteV2 = new javax.swing.JLabel();
+        BuyDateV2 = new javax.swing.JLabel();
+        FlagRow = new javax.swing.JLabel();
+        KKV2 = new javax.swing.JLabel();
+        jLabel17 = new javax.swing.JLabel();
+        MFIDV2 = new javax.swing.JLabel();
+        UpidCsum2 = new javax.swing.JLabel();
+        upid8v2 = new javax.swing.JLabel();
+        upidNumVals = new javax.swing.JLabel();
+        jScrollPane5 = new javax.swing.JScrollPane();
+        txaCsumV2 = new javax.swing.JTextArea();
+        jLabel21 = new javax.swing.JLabel();
+        jPanel1 = new javax.swing.JPanel();
+        jScrollPane3 = new javax.swing.JScrollPane();
+        CommV2 = new javax.swing.JTextArea();
+        pBrowse = new javax.swing.JPanel();
+        tpReadV1 = new javax.swing.JTabbedPane();
+        jPanel3 = new javax.swing.JPanel();
+        lblIVAl = new javax.swing.JLabel();
+        lblSrcB = new javax.swing.JLabel();
+        lblRegDatBrow = new javax.swing.JLabel();
+        lblFlagsRow = new javax.swing.JLabel();
+        upid20V1 = new javax.swing.JLabel();
+        SCV1 = new javax.swing.JLabel();
+        BCSUM1 = new javax.swing.JLabel();
+        lblGaveAwayBrow = new javax.swing.JLabel();
+        jPanel4 = new javax.swing.JPanel();
+        jScrollPane8 = new javax.swing.JScrollPane();
+        CommV1b = new javax.swing.JTextArea();
+        tpReadV2 = new javax.swing.JTabbedPane();
+        panelViewV2vorne = new javax.swing.JPanel();
+        lblTopFlagsV2 = new javax.swing.JLabel();
+        lblIVAlFlagsV2 = new javax.swing.JLabel();
+        lblCommFlag = new javax.swing.JLabel();
+        lblDates = new javax.swing.JLabel();
+        LblUPID20 = new javax.swing.JLabel();
+        lblShortCode = new javax.swing.JLabel();
+        lblCsumV2_14_28 = new javax.swing.JLabel();
+        lblcsumv2_28 = new javax.swing.JLabel();
+        lblCsumV20_14 = new javax.swing.JLabel();
+        lblFlagsV = new javax.swing.JLabel();
+        jLabel22 = new javax.swing.JLabel();
+        panehViewV2Hinten = new javax.swing.JPanel();
+        jScrollPane7 = new javax.swing.JScrollPane();
+        CommV2b = new javax.swing.JTextArea();
+        jScrollPane6 = new javax.swing.JScrollPane();
+        LSTUPids = new javax.swing.JList();
+        jLabel19 = new javax.swing.JLabel();
+        btnRefresh = new javax.swing.JButton();
+        jButton1 = new javax.swing.JButton();
+        jSeparator1 = new javax.swing.JSeparator();
+        jPanel5 = new javax.swing.JPanel();
+        jLabel18 = new javax.swing.JLabel();
+        btnSwitchMode = new javax.swing.JButton();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+        setTitle("UPIDMgr");
+
+        jScrollPane4.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+
+        pIp.setMaximumSize(new java.awt.Dimension(800, 800));
+        pIp.setName(""); // NOI18N
+        pIp.setPreferredSize(new java.awt.Dimension(800, 800));
+        pIp.setSize(800,800);
+
+        Comment.setColumns(20);
+        Comment.setRows(5);
+        jScrollPane1.setViewportView(Comment);
+
+        RegDate.setText("RegDate");
+
+        regDAteN.setText("DD.MM.YY");
+        regDAteN.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                regDAteNActionPerformed(evt);
+            }
+        });
+
+        internalValue.setText("internalValue");
+
+        Sign.setText("Sign and Create");
+        Sign.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                SignActionPerformed(evt);
+            }
+        });
+
+        MDFY.setText("MDFY");
+
+        GaveAwAY.setText("GaveAWay");
+
+        jLabel12.setText("Arights");
+
+        jLabel9.setText("NSE1");
+
+        jLabel10.setText("NSE2");
+
+        jLabel5.setText("VIT");
+
+        jLabel2.setText("Flags");
+
+        NSE2BG.add(nse2NA);
+
+        GaveAWayBG.add(gaveAway2EXP);
+
+        GaveAWayBG.add(gaveAwayU);
+
+        NSE2BG.add(nse2NV);
+
+        ArightsBG.add(arightsU);
+
+        VIT1BG.add(vitA);
+
+        NSE1BG.add(nse1NA);
+
+        ALZRBG.add(alzrNA);
+
+        NonsellableBG.add(nonsellableU);
+
+        NSE1BG.add(nse1U);
+
+        VIT1BG.add(vitNA);
+
+        VIT1BG.add(vitL);
+
+        NSE2BG.add(nse2L);
+
+        ALZRBG.add(alzrL);
+
+        VIT1BG.add(vitNV);
+
+        ArightsBG.add(arightsNV);
+
+        MDFYBG.add(mdfyNA);
+
+        MDFYBG.add(mdfyNV);
+
+        GaveAWayBG.add(gaveawayNA);
+
+        NSE1BG.add(nse1NV);
+
+        ArightsBG.add(arightsNA);
+
+        MDFYBG.add(mdfyU);
+
+        ALZRBG.add(alzrI);
+
+        ALZRBG.add(alzrU);
+
+        NonsellableBG.add(nonsellableNA);
+
+        NSE1BG.add(nse1L);
+
+        ALZRBG.add(alzrNV);
+
+        NSE2BG.add(nse2U);
+
+        jLabel13.setText("@2.Exmplr");
+
+        jLabel7.setText("Included from other");
+
+        jLabel8.setText("Not Avialable");
+
+        Disabled.setText("Not active");
+
+        jLabel6.setText("Set");
+
+        Lite.setText("Lite");
+
+        javax.swing.GroupLayout FlagGridLayout = new javax.swing.GroupLayout(FlagGrid);
+        FlagGrid.setLayout(FlagGridLayout);
+        FlagGridLayout.setHorizontalGroup(
+            FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(FlagGridLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(FlagGridLayout.createSequentialGroup()
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(FlagGridLayout.createSequentialGroup()
+                                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addComponent(alzrNA)
+                                    .addComponent(nse2NA)
+                                    .addComponent(nse1NA))
+                                .addGap(43, 43, 43)
+                                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addComponent(nse2U)
+                                    .addComponent(nse1U)
+                                    .addComponent(vitA)
+                                    .addComponent(alzrU)))
+                            .addGroup(FlagGridLayout.createSequentialGroup()
+                                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addComponent(gaveawayNA)
+                                    .addComponent(mdfyNA)
+                                    .addComponent(nonsellableNA)
+                                    .addComponent(vitNA)
+                                    .addComponent(arightsNA))
+                                .addGap(43, 43, 43)
+                                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addComponent(gaveAwayU)
+                                    .addComponent(mdfyU)
+                                    .addComponent(nonsellableU)
+                                    .addComponent(arightsU))))
+                        .addGap(48, 48, 48)
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(mdfyNV)
+                            .addComponent(vitNV)
+                            .addComponent(nse1NV)
+                            .addComponent(nse2NV)
+                            .addGroup(FlagGridLayout.createSequentialGroup()
+                                .addComponent(alzrNV)
+                                .addGap(67, 67, 67)
+                                .addComponent(alzrI))
+                            .addComponent(arightsNV))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                .addGroup(FlagGridLayout.createSequentialGroup()
+                                    .addComponent(gaveAway2EXP)
+                                    .addGap(43, 43, 43))
+                                .addComponent(alzrL, javax.swing.GroupLayout.Alignment.TRAILING))
+                            .addComponent(nse2L, javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(nse1L, javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(vitL, javax.swing.GroupLayout.Alignment.TRAILING)))
+                    .addGroup(FlagGridLayout.createSequentialGroup()
+                        .addComponent(Disabled)
+                        .addGap(23, 23, 23)
+                        .addComponent(jLabel6)
+                        .addGap(18, 18, 18)
+                        .addComponent(jLabel8)
+                        .addGap(19, 19, 19)
+                        .addComponent(jLabel7)
+                        .addGap(18, 18, 18)
+                        .addComponent(jLabel13)
+                        .addGap(18, 18, 18)
+                        .addComponent(Lite)))
+                .addContainerGap(43, Short.MAX_VALUE))
+        );
+        FlagGridLayout.setVerticalGroup(
+            FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(FlagGridLayout.createSequentialGroup()
+                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                        .addComponent(Disabled)
+                        .addComponent(jLabel6)
+                        .addComponent(jLabel8))
+                    .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                        .addComponent(jLabel7)
+                        .addComponent(jLabel13)
+                        .addComponent(Lite)))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(alzrI)
+                    .addGroup(FlagGridLayout.createSequentialGroup()
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(vitL)
+                            .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                .addComponent(vitNA)
+                                .addComponent(vitA, javax.swing.GroupLayout.Alignment.TRAILING))
+                            .addComponent(vitNV))
+                        .addGap(9, 9, 9)
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addGroup(FlagGridLayout.createSequentialGroup()
+                                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                        .addComponent(nse1NV)
+                                        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, FlagGridLayout.createSequentialGroup()
+                                            .addGap(3, 3, 3)
+                                            .addComponent(nse1L)))
+                                    .addComponent(nse1U))
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, FlagGridLayout.createSequentialGroup()
+                                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                            .addComponent(nse2U, javax.swing.GroupLayout.Alignment.TRAILING)
+                                            .addComponent(nse2NV, javax.swing.GroupLayout.Alignment.TRAILING))
+                                        .addGap(18, 18, 18)
+                                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                            .addComponent(alzrU, javax.swing.GroupLayout.Alignment.TRAILING)
+                                            .addComponent(alzrNV, javax.swing.GroupLayout.Alignment.TRAILING)))
+                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, FlagGridLayout.createSequentialGroup()
+                                        .addComponent(nse2L)
+                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                        .addComponent(alzrL))))
+                            .addGroup(FlagGridLayout.createSequentialGroup()
+                                .addComponent(nse1NA)
+                                .addGap(7, 7, 7)
+                                .addComponent(nse2NA)
+                                .addGap(18, 18, 18)
+                                .addComponent(alzrNA)))))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(arightsU, javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(arightsNA, javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(arightsNV, javax.swing.GroupLayout.Alignment.TRAILING))
+                .addGap(6, 6, 6)
+                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(nonsellableNA, javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(nonsellableU, javax.swing.GroupLayout.Alignment.TRAILING))
+                .addGap(18, 18, 18)
+                .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(FlagGridLayout.createSequentialGroup()
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(gaveAwayU)
+                            .addComponent(gaveawayNA, javax.swing.GroupLayout.Alignment.TRAILING))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addGroup(FlagGridLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(mdfyU)
+                            .addComponent(mdfyNA)
+                            .addComponent(mdfyNV)))
+                    .addComponent(gaveAway2EXP)))
+        );
+
+        jLabel11.setText("ALZR");
+
+        NonSellable.setText("Nonsellable");
+
+        cxDepsNEeded.setText("Dependencys vorhanden");
+
+        javax.swing.GroupLayout FlagsnStuffLayout = new javax.swing.GroupLayout(FlagsnStuff);
+        FlagsnStuff.setLayout(FlagsnStuffLayout);
+        FlagsnStuffLayout.setHorizontalGroup(
+            FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                .addGroup(FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                        .addGap(16, 16, 16)
+                        .addGroup(FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(jLabel12)
+                            .addGroup(FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                                    .addGap(29, 29, 29)
+                                    .addComponent(jLabel11))
+                                .addComponent(jLabel10, javax.swing.GroupLayout.Alignment.TRAILING))
+                            .addComponent(NonSellable)
+                            .addComponent(GaveAwAY)
+                            .addComponent(MDFY)))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, FlagsnStuffLayout.createSequentialGroup()
+                        .addContainerGap()
+                        .addGroup(FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(jLabel9, javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(jLabel5, javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING))))
+                .addGap(18, 18, 18)
+                .addComponent(FlagGrid, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, FlagsnStuffLayout.createSequentialGroup()
+                .addGap(0, 0, Short.MAX_VALUE)
+                .addComponent(cxDepsNEeded)
+                .addGap(52, 52, 52))
+        );
+        FlagsnStuffLayout.setVerticalGroup(
+            FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                .addGap(6, 6, 6)
+                .addComponent(cxDepsNEeded)
+                .addGap(18, 18, 18)
+                .addGroup(FlagsnStuffLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                        .addComponent(jLabel2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(jLabel5)
+                        .addGap(15, 15, 15)
+                        .addComponent(jLabel9)
+                        .addGap(18, 18, 18)
+                        .addComponent(jLabel10)
+                        .addGap(16, 16, 16)
+                        .addComponent(jLabel11)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 16, Short.MAX_VALUE)
+                        .addComponent(jLabel12)
+                        .addGap(18, 18, 18)
+                        .addComponent(NonSellable)
+                        .addGap(18, 18, 18)
+                        .addComponent(GaveAwAY)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(MDFY)
+                        .addGap(20, 20, 20))
+                    .addGroup(FlagsnStuffLayout.createSequentialGroup()
+                        .addComponent(FlagGrid, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addContainerGap())))
+        );
+
+        jLabel14.setText("Comments");
+
+        txBDAT.setText("DD.MM.YY");
+
+        lblBDAT.setText("BuyDate");
+
+        javax.swing.GroupLayout LowerCOntainerLayout = new javax.swing.GroupLayout(LowerCOntainer);
+        LowerCOntainer.setLayout(LowerCOntainerLayout);
+        LowerCOntainerLayout.setHorizontalGroup(
+            LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                .addGap(93, 93, 93)
+                .addComponent(FlagsnStuff, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap())
+            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                .addGap(69, 69, 69)
+                .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(jLabel14)
+                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 337, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                                .addGap(2, 2, 2)
+                                .addComponent(internalValue))
+                            .addComponent(lblBDAT))
+                        .addGap(18, 18, 18)
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addComponent(internalValueN, javax.swing.GroupLayout.DEFAULT_SIZE, 231, Short.MAX_VALUE)
+                            .addComponent(txBDAT))
+                        .addGap(0, 0, Short.MAX_VALUE))
+                    .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                                .addComponent(RegDate)
+                                .addGap(18, 18, 18)
+                                .addComponent(regDAteN, javax.swing.GroupLayout.PREFERRED_SIZE, 231, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addGap(0, 126, Short.MAX_VALUE))
+                            .addComponent(Sign, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                        .addContainerGap())))
+        );
+        LowerCOntainerLayout.setVerticalGroup(
+            LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(FlagsnStuff, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(9, 9, 9)
+                .addComponent(jLabel14)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addGroup(LowerCOntainerLayout.createSequentialGroup()
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(RegDate)
+                            .addComponent(regDAteN, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(internalValue)
+                            .addComponent(internalValueN, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(LowerCOntainerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(lblBDAT)
+                            .addComponent(txBDAT, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(Sign))
+                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 109, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addContainerGap(35, Short.MAX_VALUE))
+        );
+
+        jLabel15.setText("V1-ONLY");
+
+        jLabel3.setText("KK-Csum");
+
+        UPAssistant.setText("Asistent");
+        UPAssistant.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                UPAssistantActionPerformed(evt);
+            }
+        });
+
+        cxError.setText("Error?");
+
+        jLabel1.setText("Upid-20");
+
+        PreVerify.setText("PreVerify");
+        PreVerify.setEnabled(false);
+        PreVerify.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                PreVerifyActionPerformed(evt);
+            }
+        });
+
+        jLabel4.setText("Checksum");
+
+        versTogg.setText("Version 2");
+        versTogg.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                versToggActionPerformed(evt);
+            }
+        });
+
+        btnPachUpidAssist.setText("UPIDAssistant updaten");
+        btnPachUpidAssist.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                btnPachUpidAssistActionPerformed(evt);
+            }
+        });
+
+        cXoverride.setText("IgnoreCsums");
+        cXoverride.setEnabled(false);
+
+        btnEnabOVR.setText("Manuell erzeugt?");
+        btnEnabOVR.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                btnEnabOVRActionPerformed(evt);
+            }
+        });
+
+        btnNewUPID.setText("Neue UPID");
+        btnNewUPID.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                btnNewUPIDActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout UpperAreaLayout = new javax.swing.GroupLayout(UpperArea);
+        UpperArea.setLayout(UpperAreaLayout);
+        UpperAreaLayout.setHorizontalGroup(
+            UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(UpperAreaLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(UPAssistant)
+                .addGap(24, 24, 24)
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addComponent(jLabel4)
+                        .addGap(10, 10, 10)
+                        .addComponent(upidcsum, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addGap(18, 18, 18)
+                        .addComponent(PreVerify)
+                        .addGap(27, 27, 27)
+                        .addComponent(versTogg)
+                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, UpperAreaLayout.createSequentialGroup()
+                        .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(UpperAreaLayout.createSequentialGroup()
+                                .addComponent(jLabel3)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                .addComponent(kkCsum, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addGap(18, 18, 18)
+                                .addComponent(cxError))
+                            .addGroup(UpperAreaLayout.createSequentialGroup()
+                                .addComponent(jLabel1)
+                                .addGap(18, 18, 18)
+                                .addComponent(txfUPID, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                .addComponent(jLabel15, javax.swing.GroupLayout.PREFERRED_SIZE, 85, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 114, Short.MAX_VALUE)
+                        .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(UpperAreaLayout.createSequentialGroup()
+                                .addComponent(btnNewUPID, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addGap(18, 18, 18)
+                                .addComponent(btnPachUpidAssist, javax.swing.GroupLayout.PREFERRED_SIZE, 132, javax.swing.GroupLayout.PREFERRED_SIZE))
+                            .addGroup(UpperAreaLayout.createSequentialGroup()
+                                .addComponent(btnEnabOVR)
+                                .addGap(18, 18, 18)
+                                .addComponent(cXoverride)))
+                        .addGap(51, 51, 51))))
+        );
+        UpperAreaLayout.setVerticalGroup(
+            UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(UpperAreaLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(UPAssistant)
+                    .addComponent(jLabel1)
+                    .addComponent(txfUPID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(jLabel15, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(PreVerify)
+                            .addComponent(jLabel4)
+                            .addComponent(upidcsum, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                            .addComponent(versTogg))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(kkCsum, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                            .addComponent(cxError)
+                            .addComponent(cXoverride)
+                            .addComponent(btnEnabOVR)))
+                    .addGroup(UpperAreaLayout.createSequentialGroup()
+                        .addGap(29, 29, 29)
+                        .addComponent(jLabel3)))
+                .addContainerGap())
+            .addGroup(UpperAreaLayout.createSequentialGroup()
+                .addGroup(UpperAreaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(btnPachUpidAssist)
+                    .addComponent(btnNewUPID))
+                .addGap(0, 0, Short.MAX_VALUE))
+        );
+
+        javax.swing.GroupLayout pIpLayout = new javax.swing.GroupLayout(pIp);
+        pIp.setLayout(pIpLayout);
+        pIpLayout.setHorizontalGroup(
+            pIpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pIpLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(pIpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(UpperArea, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(LowerCOntainer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addContainerGap(570, Short.MAX_VALUE))
+        );
+        pIpLayout.setVerticalGroup(
+            pIpLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pIpLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(UpperArea, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(58, 58, 58)
+                .addComponent(LowerCOntainer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(0, 215, Short.MAX_VALUE))
+        );
+
+        tpOVW.addTab("Input", null, pIp, "");
+
+        jLabel16.setText("O");
+
+        LBLMDIF.setText("|XXXX|");
+
+        LBLUpidCsum.setText("XX|XX|");
+
+        lblUPID8.setText("XXXX|XXXX|");
+
+        lblNumercArea.setText("XX|XX");
+
+        lblRegDate.setText("XX|XX|XX");
+
+        lblFlagLine.setText("X|  |X|X|     |X|X|X|");
+
+        lblKcode.setText("XXX");
+
+        lblCommentsLine1.setText("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
+
+        LBLCsum.setText("XXXXX");
+
+        lblV1AlzrUnselll.setText("X|XXX");
+
+        lblGenViaPHP.setText("X");
+
+        lblGaveAwayPr.setText("X");
+
+        javax.swing.GroupLayout panelKKPreviewFLayout = new javax.swing.GroupLayout(panelKKPreviewF);
+        panelKKPreviewF.setLayout(panelKKPreviewFLayout);
+        panelKKPreviewFLayout.setHorizontalGroup(
+            panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                .addComponent(lblGaveAwayPr)
+                .addGap(40, 40, 40)
+                .addComponent(lblV1AlzrUnselll)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addComponent(lblGenViaPHP, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(37, 37, 37))
+            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(LBLCsum)
+                    .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                        .addComponent(jLabel16)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                                .addComponent(LBLMDIF)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(LBLUpidCsum))
+                            .addComponent(lblRegDate))
+                        .addGap(18, 18, 18)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                                .addComponent(lblUPID8)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(lblNumercArea))
+                            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                                .addComponent(lblFlagLine)
+                                .addGap(45, 45, 45)
+                                .addComponent(lblKcode)))))
+                .addContainerGap(50, Short.MAX_VALUE))
+            .addComponent(lblCommentsLine1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+        );
+        panelKKPreviewFLayout.setVerticalGroup(
+            panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(lblV1AlzrUnselll)
+                    .addComponent(lblGenViaPHP)
+                    .addComponent(lblGaveAwayPr))
+                .addGap(14, 14, 14)
+                .addComponent(lblCommentsLine1)
+                .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(lblRegDate)
+                            .addComponent(lblFlagLine))
+                        .addGap(31, 31, 31)
+                        .addGroup(panelKKPreviewFLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(jLabel16)
+                            .addComponent(LBLMDIF)
+                            .addComponent(LBLUpidCsum)
+                            .addComponent(lblUPID8)
+                            .addComponent(lblNumercArea)))
+                    .addGroup(panelKKPreviewFLayout.createSequentialGroup()
+                        .addGap(16, 16, 16)
+                        .addComponent(lblKcode)))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addComponent(LBLCsum)
+                .addGap(62, 62, 62))
+        );
+
+        previewVers1.addTab("Vorderseite", panelKKPreviewF);
+
+        txaCommRest.setColumns(20);
+        txaCommRest.setRows(5);
+        jScrollPane2.setViewportView(txaCommRest);
+
+        javax.swing.GroupLayout panelKKPreviewBLayout = new javax.swing.GroupLayout(panelKKPreviewB);
+        panelKKPreviewB.setLayout(panelKKPreviewBLayout);
+        panelKKPreviewBLayout.setHorizontalGroup(
+            panelKKPreviewBLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelKKPreviewBLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 298, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        panelKKPreviewBLayout.setVerticalGroup(
+            panelKKPreviewBLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 137, Short.MAX_VALUE)
+        );
+
+        previewVers1.addTab("Rückseite", panelKKPreviewB);
+
+        btnSubmitToDb.setText(".submit()");
+        btnSubmitToDb.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                btnSubmitToDbActionPerformed(evt);
+            }
+        });
+
+        mdfyrow.setText("x  |x  |X  |X  |");
+
+        DependencyDataset.setText("XXXXXXXX|XXXXXXXX");
+
+        ival_alzr_src.setText("X   |X  |X");
+
+        CommExists.setText("X");
+
+        RwgDAteV2.setText("XXXX|XX");
+
+        BuyDateV2.setText("|XXXX|XX");
+
+        FlagRow.setText("|X|X|X|X|X|X|X|X|X|X|");
+
+        KKV2.setText("XXXX");
+
+        jLabel17.setText("O");
+
+        MFIDV2.setText("|XXXX|");
+
+        UpidCsum2.setText("XX|XX|");
+
+        upid8v2.setText("XXXX|XXXX|");
+
+        upidNumVals.setText("XX|XX");
+
+        txaCsumV2.setColumns(40);
+        txaCsumV2.setRows(1);
+        jScrollPane5.setViewportView(txaCsumV2);
+
+        jLabel21.setText("2");
+
+        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
+        jPanel2.setLayout(jPanel2Layout);
+        jPanel2Layout.setHorizontalGroup(
+            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel2Layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(jPanel2Layout.createSequentialGroup()
+                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(jPanel2Layout.createSequentialGroup()
+                                .addComponent(mdfyrow)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                .addComponent(DependencyDataset))
+                            .addGroup(jPanel2Layout.createSequentialGroup()
+                                .addComponent(RwgDAteV2)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(BuyDateV2)
+                                .addGap(18, 18, 18)
+                                .addComponent(FlagRow)))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 34, Short.MAX_VALUE)
+                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                                    .addGap(0, 0, Short.MAX_VALUE)
+                                    .addComponent(CommExists, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                    .addContainerGap())
+                                .addGroup(jPanel2Layout.createSequentialGroup()
+                                    .addComponent(ival_alzr_src)
+                                    .addGap(21, 21, 21)))
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                                .addComponent(KKV2)
+                                .addContainerGap())))
+                    .addGroup(jPanel2Layout.createSequentialGroup()
+                        .addComponent(jLabel17)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(MFIDV2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(UpidCsum2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(upid8v2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addComponent(upidNumVals)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(jLabel21)
+                        .addContainerGap())
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 133, javax.swing.GroupLayout.PREFERRED_SIZE))))
+        );
+        jPanel2Layout.setVerticalGroup(
+            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel2Layout.createSequentialGroup()
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(mdfyrow)
+                    .addComponent(DependencyDataset)
+                    .addComponent(ival_alzr_src))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(CommExists)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(KKV2)
+                    .addComponent(FlagRow)
+                    .addComponent(BuyDateV2)
+                    .addComponent(RwgDAteV2))
+                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(jPanel2Layout.createSequentialGroup()
+                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(jLabel17)
+                            .addComponent(MFIDV2)
+                            .addComponent(UpidCsum2)
+                            .addComponent(upid8v2)
+                            .addComponent(upidNumVals))
+                        .addGap(0, 18, Short.MAX_VALUE))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(jLabel21)))
+                .addGap(18, 18, 18)
+                .addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE))
+        );
+
+        previewVers2.addTab("Vorderseite", jPanel2);
+
+        CommV2.setColumns(20);
+        CommV2.setRows(5);
+        jScrollPane3.setViewportView(CommV2);
+
+        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
+        jPanel1.setLayout(jPanel1Layout);
+        jPanel1Layout.setHorizontalGroup(
+            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel1Layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 298, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        jPanel1Layout.setVerticalGroup(
+            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 143, Short.MAX_VALUE)
+        );
+
+        previewVers2.addTab("Rückseite", jPanel1);
+
+        javax.swing.GroupLayout pPreviewLayout = new javax.swing.GroupLayout(pPreview);
+        pPreview.setLayout(pPreviewLayout);
+        pPreviewLayout.setHorizontalGroup(
+            pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pPreviewLayout.createSequentialGroup()
+                .addGroup(pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(pPreviewLayout.createSequentialGroup()
+                        .addContainerGap()
+                        .addGroup(pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addComponent(previewVers1)
+                            .addComponent(previewVers2)))
+                    .addGroup(pPreviewLayout.createSequentialGroup()
+                        .addGap(19, 19, 19)
+                        .addComponent(btnSubmitToDb, javax.swing.GroupLayout.PREFERRED_SIZE, 386, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                .addContainerGap(1014, Short.MAX_VALUE))
+        );
+        pPreviewLayout.setVerticalGroup(
+            pPreviewLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pPreviewLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(previewVers1, javax.swing.GroupLayout.PREFERRED_SIZE, 165, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(18, 18, 18)
+                .addComponent(previewVers2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(18, 18, 18)
+                .addComponent(btnSubmitToDb)
+                .addContainerGap(475, Short.MAX_VALUE))
+        );
+
+        tpOVW.addTab("Preview", pPreview);
+
+        pBrowse.setPreferredSize(new java.awt.Dimension(800, 588));
+
+        lblIVAl.setText("X|XX");
+
+        lblSrcB.setText("X");
+
+        lblRegDatBrow.setText("XXXX|XX");
+
+        lblFlagsRow.setText("X|  |X|X|  |  |X|X|X");
+
+        upid20V1.setText("O|XXXX|XX|XX|XXXX|XXXX|XX|XX");
+
+        SCV1.setText("XXX");
+
+        BCSUM1.setText("XXXXX");
+
+        lblGaveAwayBrow.setText("X");
+
+        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
+        jPanel3.setLayout(jPanel3Layout);
+        jPanel3Layout.setHorizontalGroup(
+            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addComponent(BCSUM1))
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addComponent(lblRegDatBrow)
+                        .addGap(105, 105, 105)
+                        .addComponent(lblFlagsRow)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 45, Short.MAX_VALUE)
+                        .addComponent(SCV1)))
+                .addGap(26, 26, 26))
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addGap(19, 19, 19)
+                .addComponent(upid20V1, javax.swing.GroupLayout.PREFERRED_SIZE, 230, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(0, 0, Short.MAX_VALUE))
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addGap(9, 9, 9)
+                .addComponent(lblGaveAwayBrow)
+                .addGap(18, 18, 18)
+                .addComponent(lblIVAl)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addComponent(lblSrcB)
+                .addGap(42, 42, 42))
+        );
+        jPanel3Layout.setVerticalGroup(
+            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel3Layout.createSequentialGroup()
+                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(lblSrcB)
+                    .addComponent(lblIVAl)
+                    .addComponent(lblGaveAwayBrow))
+                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addGap(39, 39, 39)
+                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(lblRegDatBrow)
+                            .addComponent(lblFlagsRow))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 43, Short.MAX_VALUE)
+                        .addComponent(upid20V1)
+                        .addGap(36, 36, 36))
+                    .addGroup(jPanel3Layout.createSequentialGroup()
+                        .addGap(31, 31, 31)
+                        .addComponent(SCV1)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(BCSUM1)
+                        .addContainerGap())))
+        );
+
+        tpReadV1.addTab("Vorne", jPanel3);
+
+        CommV1b.setColumns(20);
+        CommV1b.setRows(5);
+        jScrollPane8.setViewportView(CommV1b);
+
+        javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
+        jPanel4.setLayout(jPanel4Layout);
+        jPanel4Layout.setHorizontalGroup(
+            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel4Layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 310, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        jPanel4Layout.setVerticalGroup(
+            jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 160, Short.MAX_VALUE)
+        );
+
+        tpReadV1.addTab("Hinten", jPanel4);
+
+        lblTopFlagsV2.setText("X|X|X|X|");
+
+        lblIVAlFlagsV2.setText("XXX|X|X");
+
+        lblCommFlag.setText("X");
+
+        lblDates.setText("XXXX|XX|XXXX|XX");
+
+        LblUPID20.setText("O|XXXX|XX|XX|XXXX|XXXX|XX|XX|");
+
+        lblShortCode.setText("XXXX");
+
+        lblCsumV2_14_28.setText("XXXXXXXXXXXXXX");
+
+        lblcsumv2_28.setText("XXXXXXXXXXXX");
+
+        lblCsumV20_14.setText("XXXXXXXXXXXXXX");
+
+        lblFlagsV.setText("|X|X|X|X|X|X|X|X|X|X|");
+
+        jLabel22.setText("2");
+
+        javax.swing.GroupLayout panelViewV2vorneLayout = new javax.swing.GroupLayout(panelViewV2vorne);
+        panelViewV2vorne.setLayout(panelViewV2vorneLayout);
+        panelViewV2vorneLayout.setHorizontalGroup(
+            panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelViewV2vorneLayout.createSequentialGroup()
+                        .addComponent(lblTopFlagsV2)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(lblIVAlFlagsV2))
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(67, 67, 67)
+                        .addComponent(LblUPID20)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 76, Short.MAX_VALUE)
+                        .addComponent(jLabel22))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelViewV2vorneLayout.createSequentialGroup()
+                        .addComponent(lblDates)
+                        .addGap(18, 18, 18)
+                        .addComponent(lblFlagsV)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(lblShortCode))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(0, 0, Short.MAX_VALUE)
+                        .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(lblcsumv2_28)
+                            .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                .addComponent(lblCommFlag, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 16, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addComponent(lblCsumV2_14_28, javax.swing.GroupLayout.Alignment.TRAILING)
+                                .addComponent(lblCsumV20_14, javax.swing.GroupLayout.Alignment.TRAILING)))))
+                .addContainerGap())
+        );
+        panelViewV2vorneLayout.setVerticalGroup(
+            panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(lblTopFlagsV2)
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addContainerGap()
+                        .addComponent(lblIVAlFlagsV2)))
+                .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(11, 11, 11)
+                        .addComponent(lblCommFlag)
+                        .addGap(8, 8, 8)
+                        .addComponent(lblShortCode)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addComponent(jLabel22))
+                    .addGroup(panelViewV2vorneLayout.createSequentialGroup()
+                        .addGap(25, 25, 25)
+                        .addGroup(panelViewV2vorneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                            .addComponent(lblDates)
+                            .addComponent(lblFlagsV))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(LblUPID20)))
+                .addGap(1, 1, 1)
+                .addComponent(lblCsumV20_14)
+                .addGap(3, 3, 3)
+                .addComponent(lblCsumV2_14_28)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(lblcsumv2_28)
+                .addContainerGap(16, Short.MAX_VALUE))
+        );
+
+        tpReadV2.addTab("Vorne", panelViewV2vorne);
+
+        CommV2b.setColumns(20);
+        CommV2b.setEditable(false);
+        CommV2b.setRows(5);
+        jScrollPane7.setViewportView(CommV2b);
+
+        javax.swing.GroupLayout panehViewV2HintenLayout = new javax.swing.GroupLayout(panehViewV2Hinten);
+        panehViewV2Hinten.setLayout(panehViewV2HintenLayout);
+        panehViewV2HintenLayout.setHorizontalGroup(
+            panehViewV2HintenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panehViewV2HintenLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 309, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        panehViewV2HintenLayout.setVerticalGroup(
+            panehViewV2HintenLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(panehViewV2HintenLayout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 138, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+
+        tpReadV2.addTab("HInten", panehViewV2Hinten);
+
+        LSTUPids.setModel(new javax.swing.DefaultListModel());
+        LSTUPids.addMouseListener(new java.awt.event.MouseAdapter()
+        {
+            public void mouseClicked(java.awt.event.MouseEvent evt)
+            {
+                LSTUPidsMouseClicked(evt);
+            }
+        });
+        jScrollPane6.setViewportView(LSTUPids);
+
+        jLabel19.setText("List of avail UPIDs");
+
+        btnRefresh.setText("Refresh");
+        btnRefresh.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                btnRefreshActionPerformed(evt);
+            }
+        });
+
+        jButton1.setText("Bearbeiten");
+        jButton1.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                jButton1ActionPerformed(evt);
+            }
+        });
+
+        jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL);
+
+        javax.swing.GroupLayout pBrowseLayout = new javax.swing.GroupLayout(pBrowse);
+        pBrowse.setLayout(pBrowseLayout);
+        pBrowseLayout.setHorizontalGroup(
+            pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pBrowseLayout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addComponent(jLabel19)
+                    .addComponent(btnRefresh)
+                    .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 170, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addGap(18, 18, 18)
+                .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addGap(34, 34, 34)
+                .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addComponent(tpReadV1, javax.swing.GroupLayout.PREFERRED_SIZE, 335, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(tpReadV2, javax.swing.GroupLayout.PREFERRED_SIZE, 334, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addGap(108, 108, 108)
+                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 144, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap(598, Short.MAX_VALUE))
+        );
+        pBrowseLayout.setVerticalGroup(
+            pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(pBrowseLayout.createSequentialGroup()
+                .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(pBrowseLayout.createSequentialGroup()
+                        .addGroup(pBrowseLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(pBrowseLayout.createSequentialGroup()
+                                .addGap(26, 26, 26)
+                                .addComponent(tpReadV1, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE))
+                            .addGroup(pBrowseLayout.createSequentialGroup()
+                                .addGap(57, 57, 57)
+                                .addComponent(jButton1)))
+                        .addGap(18, 18, 18)
+                        .addComponent(tpReadV2, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addGroup(pBrowseLayout.createSequentialGroup()
+                        .addGap(7, 7, 7)
+                        .addComponent(btnRefresh)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(jLabel19)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(jScrollPane6, javax.swing.GroupLayout.PREFERRED_SIZE, 521, javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pBrowseLayout.createSequentialGroup()
+                        .addContainerGap()
+                        .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 576, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                .addGap(1, 1, 1))
+        );
+
+        tpOVW.addTab("Browse", pBrowse);
+
+        jScrollPane4.setViewportView(tpOVW);
+
+        jLabel18.setText("Reserved for Future Use");
+
+        btnSwitchMode.setText("Modus wexxeln");
+        btnSwitchMode.addActionListener(new java.awt.event.ActionListener()
+        {
+            public void actionPerformed(java.awt.event.ActionEvent evt)
+            {
+                btnSwitchModeActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
+        jPanel5.setLayout(jPanel5Layout);
+        jPanel5Layout.setHorizontalGroup(
+            jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel5Layout.createSequentialGroup()
+                .addGap(69, 69, 69)
+                .addComponent(jLabel18)
+                .addContainerGap())
+            .addGroup(jPanel5Layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(btnSwitchMode, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+        );
+        jPanel5Layout.setVerticalGroup(
+            jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(jPanel5Layout.createSequentialGroup()
+                .addComponent(btnSwitchMode)
+                .addGap(92, 92, 92)
+                .addComponent(jLabel18)
+                .addContainerGap(493, Short.MAX_VALUE))
+        );
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addComponent(jSeparator3, javax.swing.GroupLayout.DEFAULT_SIZE, 1201, Short.MAX_VALUE)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addComponent(jScrollPane4, javax.swing.GroupLayout.PREFERRED_SIZE, 870, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addContainerGap())
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addGap(33, 33, 33)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 622, Short.MAX_VALUE)
+                    .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                .addGap(26, 26, 26)
+                .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addContainerGap(30, Short.MAX_VALUE))
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    // <editor-fold defaultstate="collapsed" desc="evthandlers">
+    
+    private void SignActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_SignActionPerformed
+        //Variablen einlesen
+        values = new HashMap<>();
+        if(!cXoverride.isSelected())
+            validateKK(false);//UPID-included Cheksum erzeugen
+        String kommentar = "";
+        //Flags speichern: flags.put(Name, Wert)
+        //Hässliches IfElse-Konstrukt
+        //Flags mit jede Menge Ifs (Java-Meise)
+        //<editor-fold defaultstate="collapsed" desc="Nasty Code">
+        flags.put("SRC", "J");//Hardcoded für CreatedByJava-Flag
+        if(cXoverride.isSelected()) flags.put("src"," ");
+        /*
+        if(arightsNA.isSelected())
+        {    
+            flags.put("Arights","D");//D Durch Csum-Null ersetzen da dieser leeres Feld ersetzt!!!!!!!!!!!!
+        }
+        else
+        {
+            if(arightsU.isSelected())
+            {
+                flags.put("Arights","X");
+            }
+            else
+            {
+                if(arightsNV.isSelected())
+                {
+                    flags.put("Arights","N");
+                }
+                else
+                {
+                    flags.put("Arights","D");//Default
+                }
+            }
+        }*/
+        //############
+        if(vitA.isSelected())
+        {
+            flags.put("VIT","X");
+        }
+        else
+        {
+            if(vitL.isSelected())
+            {
+                flags.put("VIT","L");
+            }
+            else
+            {
+                if(vitNA.isSelected())
+                {
+                    flags.put("VIT","D");
+                }
+                else
+                {
+                    if(vitNV.isSelected())
+                    {
+                        flags.put("VIT","N");
+                    }
+                    else
+                    {
+                        flags.put("VIT","D");
+                    }
+                }
+            }
+        }
+        //
+        if(nse1U.isSelected())
+        {
+            flags.put("NSE1","X");
+        }
+        else
+        {
+            if(nse1L.isSelected())
+            {
+                flags.put("NSE1","L");
+            }
+            else
+            {
+                if(nse1NA.isSelected())
+                {
+                    flags.put("NSE1","D");
+                }
+                else
+                {
+                    if(nse1NV.isSelected())
+                    {
+                        flags.put("NSE1","N");
+                    }
+                    else
+                    {
+                        flags.put("NSE1","D");
+                    }
+                }
+            }
+        }
+        
+        
+        if(nse2U.isSelected())
+        {
+            flags.put("NSE2","X");
+        }
+        else
+        {
+            if(nse2L.isSelected())
+            {
+                flags.put("NSE2","L");
+            }
+            else
+            {
+                if(nse2NA.isSelected())
+                {
+                    flags.put("NSE2","D");
+                }
+                else
+                {
+                    if(nse2NV.isSelected())
+                    {
+                        flags.put("NSE2","N");
+                    }
+                    else
+                    {
+                        flags.put("NSE2","D");
+                    }
+                }
+            }
+        }
+        
+        
+        
+        if(alzrU.isSelected())
+        {
+            flags.put("ALZR","X");
+        }
+        else
+        {
+            if(alzrL.isSelected())
+            {
+                flags.put("ALZR","L");
+            }
+            else
+            {
+                if(alzrNA.isSelected())
+                {
+                    flags.put("ALZR","D");
+                }
+                else
+                {
+                    if(alzrNV.isSelected())
+                    {
+                        flags.put("ALZR","N");
+                    }
+                    else
+                    {
+                        if(alzrI.isSelected())
+                        {
+                            flags.put("ALZR","I");
+                        }
+                        else
+                        {
+                            flags.put("ALZR","D");
+                        }
+                    }    
+                }
+            }
+        }
+        
+        if(arightsNA.isSelected())
+        {
+            flags.put("Arights","D");
+        }
+        else
+        {
+            if(arightsNV.isSelected())
+            {
+                flags.put("Arights","N");
+            }
+            else
+            {
+                if(arightsU.isSelected())
+                {
+                    flags.put("Arights","X");
+                }
+                else
+                {
+                    flags.put("Arights","D");
+                }
+            }
+        }
+        
+        
+        if(nonsellableNA.isSelected())
+        {
+            flags.put("Nonsellable","D");
+        }
+        else
+        {
+            if(nonsellableU.isSelected())
+            {
+                flags.put("Nonsellable","X");
+            }
+            else
+            {
+                flags.put("Nonsellable","D");
+            }
+        }
+        
+        if(gaveAway2EXP.isSelected())
+        {
+            flags.put("gaveAway","B");
+        }
+        else
+        {
+            if(gaveAwayU.isSelected())
+            {
+                flags.put("gaveAway","X");
+            }
+            else
+            {
+                flags.put("gaveAway","D");
+            }
+        }
+        
+        if(mdfyU.isSelected())
+        {
+            flags.put("MDFY","X");
+        }
+        else
+        {
+            if(mdfyNV.isSelected())
+            {
+                flags.put("MDFY","N");
+            }
+            else
+            {
+                flags.put("MDFY","D");
+            }
+        }
+        //</editor-fold>
+        String upidtmp = txfUPID.getText();
+        values.put("UPIDPRE",upidtmp);
+        upidtmp = upidtmp.replace("-","");
+        values.put("UPIDCSE",upidtmp);
+        Tools.DebugHelperPrint(upidtmp, true, "UpidTK.enableDebug");
+        if(upidtmp.length()==20||upidtmp.length()==22)
+        {
+            upid.put("MFID",upidtmp.substring(0, 4));//String-Segmente laden
+            upid.put("PSC",upidtmp.substring(4, 6));
+            upid.put("UPID6",upidtmp.substring(6, 12));
+            upid.put("ZSC",upidtmp.substring(12, 14));
+            upid.put("SRC",upidtmp.substring(14, 16));
+            upid.put("CSUM",upidtmp.substring(16, 20));
+            if(upidtmp.length()==22)
+            {
+                upid.put("ADD",upidtmp.substring(20, 22));
+            }
+            upidtmp = null;
+        }
+        else
+        {
+            if(upidtmp.length()==21||upidtmp.length()==23)
+            {
+                upid.put("MFID",upidtmp.substring(0, 4));//String-Segmente laden
+                upid.put("PSC",upidtmp.substring(4, 6));
+                upid.put("UPID6",upidtmp.substring(6, 13));
+                upid.put("ZSC",upidtmp.substring(13, 15));
+                upid.put("SRC",upidtmp.substring(15, 17));
+                upid.put("CSUM",upidtmp.substring(17, 21));
+                if(upidtmp.length()==23)
+                {
+                    upid.put("ADD",upidtmp.substring(21, 23));
+                }
+                upidtmp = null;
+            }
+            else
+            {
+                Tools.dlg(true, "Error in Upid", "die Länge stimmt nicht!!!");
+                return;//TODO Add ereor-TRAP;
+            }
+        }
+        if(Version1)
+        {
+            values.put("CSUM", upidcsum.getText());
+            values.put("CSUM2", kkCsum.getText());
+        }
+        if(cxError.isSelected())
+        {
+            values.put("Err","1");
+        }
+        else
+        {
+            values.put("Err","0");
+        }
+        //parseComments
+        values.put("COMMC",Tools.getSHAString(Comment.getText()));
+        values.put("COMM",Comment.getText());
+        values.put("RDATC",Tools.getSHAString(regDAteN.getText()));
+        values.put("RDAT",regDAteN.getText());
+        values.put("BDAT",txBDAT.getText());
+        String val = internalValueN.getText();
+        val = val.replace(",",".");//akzeptiert Komma und Punkt;keine dezimaltrenner
+        values.put("IVAL", val);
+        //bakeFlags
+        String bakFlags1 = "";
+        for (String fs : FlagsAvail)
+        {
+            bakFlags1 += (flags.get(fs));
+        }
+        //length|cnt;
+        String bakFlags = bakFlags1.length()+"|"+bakFlags1;
+        Tools.DebugHelperPrint(bakFlags, true, "UpidTK.enableDebug");
+        values.put("BKFlag",bakFlags);
+        
+        String sKKvalidated = upidcsum.getText(); 
+        if(!cXoverride.isSelected())
+        {
+        sKKvalidated = validateKKC();
+        }
+        //values.put
+        
+        values.put("DPT","NotNeeded");
+        if(cxDepsNEeded.isSelected())
+        {
+            values.put("DPT","Enabled");
+        }
+                
+        
+        
+        tpOVW.setEnabledAt(1, true);
+        boolean cntne = Tools.dlg(true,"Csum berechnet: "+sKKvalidated,"Karteikaartenvorachau anzeigen?");
+        updatePreview();
+        if(cntne)
+        {
+            tpOVW.setSelectedIndex(1);
+        }
+        
+    }//GEN-LAST:event_SignActionPerformed
+   
+    private void UPAssistantActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_UPAssistantActionPerformed
+    {//GEN-HEADEREND:event_UPAssistantActionPerformed
+
+        new Thread(new Runnable()
+        {
+            
+            @Override
+            @SuppressWarnings({"CallToThreadDumpStack"})
+            public void run()
+            {
+                //PublicStorage.l.unlock();
+                      try
+               {
+                   // Thread.sleep(100);
+                    PublicStorage.l.lock();
+                }
+                catch (InterruptedException ex)
+                {
+                    ex.printStackTrace();
+                }
+               new UPIDAssistant().setVisible(true);
+                //UPIDAssistant.main(null);
+            }
+        }).start();
+      /*  try
+        {
+            Thread.sleep(1000);
+            
+        }
+        catch (InterruptedException ex)
+        {
+            System.err.println("Fick");
+            ex.printStackTrace();
+        }*/
+        
+        new Thread(new Runnable()
+        {
+
+            @SuppressWarnings("CallToThreadDumpStack")
+            @Override
+            public void run()
+            {
+                try
+                {
+                  /*  while (!PublicStorage.ready)
+                    {
+                        Thread.sleep(5)
+                    };*/
+                    Thread.sleep(1000);
+                    Tools.DebugHelperPrint("Fotze", true, "UpidTK.enableDebug");
+                    PublicStorage.l.lock();
+                    PublicStorage.l.unlock();//Erkennung ob fertig
+                    Object[] oupid = (Object[]) PublicStorage.STO.get("upid");
+                    String upid = ((String) oupid[0]) + ((String) oupid[1]) + ((String) oupid[2])
+                            + Tools.padLeft(2, ((Integer) oupid[3]).toString(), '0')
+                            + Tools.padLeft(2, ((Integer) oupid[4]).toString(), '0');
+                    txfUPID.setText(upid);
+                }
+                catch (Exception ex)
+                {
+                    ex.printStackTrace();
+                }
+            }
+        }).start();
+    }//GEN-LAST:event_UPAssistantActionPerformed
+
+    private void PreVerifyActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_PreVerifyActionPerformed
+    {//GEN-HEADEREND:event_PreVerifyActionPerformed
+        validateKK();
+    }//GEN-LAST:event_PreVerifyActionPerformed
+
+    private void versToggActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_versToggActionPerformed
+    {//GEN-HEADEREND:event_versToggActionPerformed
+        Version1 = !Version1;
+        cXoverride.setVisible(Version1);
+        cxDepsNEeded.setVisible(Version1);
+        btnEnabOVR.setVisible(Version1);
+        lblBDAT.setVisible(!Version1);
+        txBDAT.setVisible(!Version1);
+        PreVerify.setEnabled(Version1);
+        if(Version1)
+        {
+            versTogg.setText("Version 1");
+        }
+        else
+        {
+            versTogg.setText("Version 2");
+        }
+    }//GEN-LAST:event_versToggActionPerformed
+
+    private void regDAteNActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_regDAteNActionPerformed
+    {//GEN-HEADEREND:event_regDAteNActionPerformed
+        if(regDAteN.getText().equals("DD.MM.YY"))
+        {
+            regDAteN.setText("");
+        }
+    }//GEN-LAST:event_regDAteNActionPerformed
+
+    private void btnSubmitToDbActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnSubmitToDbActionPerformed
+    {//GEN-HEADEREND:event_btnSubmitToDbActionPerformed
+        int version=2;
+        if(Version1) version=1;
+        String statement = "INSERT INTO upidlst(UPID20,version)Values('"+values.get("UPIDCSE")+"',"+version+")";
+        String getLinkageIDQuery = "SELECT LinkageID FROM upidlst where UPID20='"+values.get("UPIDCSE")+"'";
+        dbc.write(statement);
+        String LinkageID = dbc.querySingleCell(getLinkageIDQuery);
+        if(Version1)
+        {
+            createV1Dataset(LinkageID);
+
+            versToggActionPerformed(null);
+        }
+        else
+        {
+            createV2Dataset(LinkageID);
+        }
+        
+        txfUPID.setText("");
+        upidcsum.setText("");
+        kkCsum.setText("");
+        cxError.setSelected(false);
+        cXoverride.setSelected(false);
+        cXoverride.setEnabled(false);
+        Comment.setText("");
+        regDAteN.setText("DD.MM.YY");
+        internalValueN.setText("");
+        txBDAT.setText("DD.MM.YY");
+        btnRefreshActionPerformed(evt);
+    }//GEN-LAST:event_btnSubmitToDbActionPerformed
+
+    private void btnPachUpidAssistActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnPachUpidAssistActionPerformed
+    {//GEN-HEADEREND:event_btnPachUpidAssistActionPerformed
+        new UpdateAssistant().setVisible(true);
+    }//GEN-LAST:event_btnPachUpidAssistActionPerformed
+
+    private void btnRefreshActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnRefreshActionPerformed
+    {//GEN-HEADEREND:event_btnRefreshActionPerformed
+        ((DefaultListModel)(LSTUPids.getModel())).clear();
+        String[] availUPIDs = dbc.querySIngleColumn("Select UPID20 from upidlst");
+        
+        for (String elem : availUPIDs)
+        {
+            ((DefaultListModel)(LSTUPids.getModel())).addElement(elem);
+        }
+        
+    }//GEN-LAST:event_btnRefreshActionPerformed
+
+    private void LSTUPidsMouseClicked(java.awt.event.MouseEvent evt)//GEN-FIRST:event_LSTUPidsMouseClicked
+    {//GEN-HEADEREND:event_LSTUPidsMouseClicked
+        loadDataSet((String)LSTUPids.getSelectedValue());
+    }//GEN-LAST:event_LSTUPidsMouseClicked
+
+    private void btnEnabOVRActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnEnabOVRActionPerformed
+    {//GEN-HEADEREND:event_btnEnabOVRActionPerformed
+        cXoverride.setEnabled(true);
+    }//GEN-LAST:event_btnEnabOVRActionPerformed
+
+    private void btnSwitchModeActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnSwitchModeActionPerformed
+    {//GEN-HEADEREND:event_btnSwitchModeActionPerformed
+        Ifatzeh.sel.setVisible(true);
+        this.setVisible(false);
+    }//GEN-LAST:event_btnSwitchModeActionPerformed
+
+    
+    boolean isEditing = false;
+    private void btnNewUPIDActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnNewUPIDActionPerformed
+    {//GEN-HEADEREND:event_btnNewUPIDActionPerformed
+        btnNewUPID.setVisible(false);
+        isEditing=false;
+        txfUPID.setText("");
+        txfUPID.setEnabled(false);
+        upidcsum.setText("");
+        upidcsum.setEnabled(false);
+        kkCsum.setText("");
+        kkCsum.setEnabled(false);
+    }//GEN-LAST:event_btnNewUPIDActionPerformed
+
+    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_jButton1ActionPerformed
+    {//GEN-HEADEREND:event_jButton1ActionPerformed
+        
+    }//GEN-LAST:event_jButton1ActionPerformed
+    
+    //</editor-fold>
+
+    // <editor-fold defaultstate="collapsed" desc="Manual Codessssss">
+    private boolean CSUMMED = false;
+    public String validateKK()
+    {
+        return validateKK(true);
+    }
+    
+    public String validateKK(boolean all)
+    {
+        
+        @SuppressWarnings("LocalVariableHidesMemberVariable")
+        String upid = txfUPID.getText();
+        //if(CSUMMED)
+       // {
+            int ml=16;
+            if(!(upid.length()-4<ml))
+            {
+                ml=upid.length()-4;
+            }
+            upid=upid.substring(0,ml);//entfernt womöglich schon berechnete CSUM
+       // }
+        CSUMMED=true;
+        String ret = Tools.runSingleCmd(false, true,true, "X:\\cpltoExx\\upidgen.exe "+upid+" X");
+        Tools.DebugHelperPrint(ret, true, "UpidTK.enableDebug");
+        String[] CSUMS = ret.split("\\|");
+        boolean setErr = false;
+        
+        try
+        {
+        kkCsum.setText(CSUMS[2]);
+        if(all) 
+            values.put("KKSC",CSUMS[2]);
+        }
+        catch(Exception e)//HACK um SVNP abzufangen
+        {
+          //  e.printStackTrace();//war ne Fliegenklatsche :-)
+            setErr=true;
+        }
+        if(setErr)
+        {
+            int csulength = CSUMS[0].length();
+            CSUMS[0] = CSUMS[0].substring(csulength-4);
+            if(all)values.put("KKSC","---");
+        }
+        
+        
+        txfUPID.setText(upid+CSUMS[0]);
+        if(all)
+        {
+            upidcsum.setText(CSUMS[1]);
+            values.put("KKCS",CSUMS[1]);
+            cxError.setSelected(setErr);
+        }
+        
+        
+               
+        return CSUMS[1];
+    }
+    
+    public String[] ValuesAvailToBake = {"UPIDCSE","CSUM","CSUM2","Err","COMM","RDAT","BDAT","IVAL","BKFlag"};//BKflag=bakedflags
+    public String validateKKC()
+    {
+        if(Version1)
+        {
+            return validateKK();
+        }
+        String bakedAll = "";
+        for (String sel : ValuesAvailToBake)
+        {
+            bakedAll+=values.get(sel);
+        }
+        String CSum = Tools.getSHAString(bakedAll);
+        values.put("CSUM",CSum);
+        String SC = CSum.substring(0,4);
+        //Kurzcode in HExxx
+        values.put("CSUM2",SC);
+        return CSum;
+    }
+    
+    public void updatePreview()
+    {
+        String lulpid=values.get("UPIDCSE");
+        LBLMDIF.setText("|"+lulpid.substring(0,4)+"|");
+        MFIDV2.setText("|"+lulpid.substring(0,4)+"|");
+        
+        //#######
+        String upcs = lulpid.substring(lulpid.length()-4);
+        LBLUpidCsum.setText(""+upcs.substring(0,2)+"|"+upcs.substring(2)+"|");
+        UpidCsum2.setText(""+upcs.substring(0,2)+"|"+upcs.substring(2)+"|");
+        
+        lblUPID8.setText(lulpid.substring(4,8)+"|"+lulpid.substring(8,12)+"|");
+        upid8v2.setText(lulpid.substring(4,8)+"|"+lulpid.substring(8,12)+"|");
+        
+        lblNumercArea.setText(lulpid.substring(12,14)+"|"+lulpid.substring(14,16));
+        upidNumVals.setText(lulpid.substring(12,14)+"|"+lulpid.substring(14,16));
+        
+        LBLCsum.setText(values.get("CSUM"));
+        txaCsumV2.setText(values.get("CSUM"));
+        
+        lblKcode.setText(values.get("CSUM2"));
+        KKV2.setText(values.get("CSUM2"));
+        if(values.get("Err").equals("1"))
+        {
+            lblKcode.setText("---");
+        }
+        
+        
+        String regDate = values.get("RDAT");
+        Tools.DebugHelperPrint(regDate, true, "UpidTK.enableDebug");
+        regDate=regDate.substring(0,2)+"|"+regDate.substring(3,5)+"|"+regDate.substring(6);
+        Tools.DebugHelperPrint(regDate, true, "UpidTK.enableDebug");
+        lblRegDate.setText(regDate);
+        regDate = regDate.substring(0,2)+regDate.substring(3);
+        RwgDAteV2.setText(regDate);
+        
+        String Buydat = values.get("BDAT");
+        try{
+        Buydat = Buydat.substring(0,2)+Buydat.substring(3,5)+"|"+Buydat.substring(6);
+        BuyDateV2.setText(Buydat);
+        }
+        catch (Exception e)
+        {
+            
+        }
+        //verfügbare flags: {"SRC","VIT","NSE1","NSE2","ALZR","Arights","Nonsellable","gaveAway","MDFY"};
+        String FlagList = values.get("BKFlag").substring(2);
+        lblV1AlzrUnselll.setText(FlagList.substring(6,7)+"|"+values.get("IVAL"));
+        lblFlagLine.setText(FlagList.substring(4,5)+"|  |"+FlagList.substring(8,9)+"|"+FlagList.substring(5,6)+"|  |  |"
+                    +FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|");
+        lblGaveAwayPr.setText(FlagList.substring(7,8));
+        ival_alzr_src.setText(values.get("IVAL")+"|"+FlagList.substring(4,5)+"|"+FlagList.substring(0,1));
+        FlagRow.setText("|"+FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|"+FlagList.substring(6,7)+"|X|X|X|X|X|X|");
+        //NSE1|2|VIT|Unsellble
+        
+        String depNeeded = "D";
+        if(values.get("DPT").equals("Enabled"))
+            depNeeded="X";
+        
+        mdfyrow.setText(FlagList.substring(8,9)+"|"+FlagList.substring(7,8)+"|"+FlagList.substring(5,6)+"|"+depNeeded);
+        //MDFY|GaveAway|Arighta
+        //ival_alzr_src
+
+        
+        //maXlabelLength=50 zeichen
+        //#######################
+        String comment =values.get("COMM");
+        CommV2.setText(comment);
+        String commentFrontPP= "", CommFront = "",COmmRest = "";
+        try
+        {
+        commentFrontPP = comment.substring(0,50);
+        CommFront = "";
+        COmmRest = comment.substring(50);
+        Tools.DebugHelperPrint(commentFrontPP, true, "UpidTK.enableDebug");
+        }
+        catch(Exception e)
+        {
+        commentFrontPP = comment;
+        CommFront = "";
+        COmmRest = "";
+        }
+              
+        String[] commentL1 = commentFrontPP.split("\n");
+        Tools.DebugHelperPrint(commentL1[0]+"|"+commentL1[1], true, "UpidTK.enableDebug");
+        String CommentRest = "";
+        if(commentL1.length>1)
+        {
+            CommFront = commentL1[0];
+            for (int i = 1; i < commentL1.length; i++)
+            {
+                CommentRest += commentL1[i]+"\n";
+                
+            }
+            
+            COmmRest = CommentRest+COmmRest;
+        }
+        else//splittet auf Leerzeichen
+        {            
+            String[] CommLZS = commentFrontPP.split(" ");
+            COmmRest = CommLZS[CommLZS.length-1]; 
+            if(CommLZS.length>1)
+            {
+                for (int i = 0; i < CommLZS.length-2; i++)
+                {
+                    CommFront += CommLZS[i]+" ";
+                }
+                CommFront += CommLZS[CommLZS.length-2];
+            }
+        }
+    lblCommentsLine1.setText(CommFront);
+    txaCommRest.setText(COmmRest);
+    if(Version1)
+    {
+        previewVers1.setVisible(true);
+        previewVers2.setVisible(false);
+    }
+    else
+    {
+        previewVers1.setVisible(false);
+        previewVers2.setVisible(true);
+    }
+    
+        
+        
+    }
+    
+    //valuepalette = {"UPIDCSE","CSUM","CSUM2","Err","COMM","RDAT","BDAT","IVAL","BKFlag"};//BKflag=bakedflags
+    
+    public void createV1Dataset(String LinkageID)
+    {
+        if(values.get("Err").equals("1"))
+        {
+            values.put("CSUM2","-1");
+        }
+        //UPID20,LinkageID,CSUM,Shortcode,Eingangsdatum,FlagValues,Remarks,Version=1
+        String writeIn = "INSERT INTO objreg1 values('"+values.get("UPIDCSE")+"',\n"
+                +LinkageID+","+values.get("CSUM")+",\n"
+                +values.get("CSUM2")+",'"+values.get("RDAT")+"',\n"
+                +"'"+values.get("BKFlag")+"',\n"
+                +"'"+values.get("COMM")+"',1,"+values.get("IVAL")+")";//TODO:Db erledigen
+        dbc.write(writeIn);
+        
+    }
+    
+    //UPID20,LinakgeID,CSUM,Shortcode,EIngangsdatum,Kaufdatum,FlagVals,Remarks,Version,DependencyLinks
+    public void createV2Dataset(String LinkageID)
+    {
+        String writeIn = "INSERT INTO objreg2 values('"+values.get("UPIDCSE")+"',\n"
+                +LinkageID+",'"+values.get("CSUM")+"',\n'"
+                +values.get("CSUM2")+"','"+values.get("RDAT")+"',\n"+
+                "'"+values.get("BDAT")+"','"+values.get("BKFlag")+"',\n"
+                +"'"+values.get("COMM")+"',2,'"+values.get("DPT")+"',"+values.get("IVAL")+")";
+        dbc.write(writeIn);
+        
+    }        
+    
+    
+    
+    public void loadDataSet(String UPID)
+    {
+        String Version = dbc.querySingleCell("SELECT Version FROM upidlst where UPID20='"+UPID+"'");
+        int vv = Integer.valueOf(Version);
+        String[] row = null;
+        if(vv>1)
+        {
+            row = dbc.querySingleRow("Select * from  objreg2 where UPID20='"+UPID+"';",11);
+            //UPID20,LinkageID,CSUM,Shortcode,kaufdatum,Registrierdatum,FlagValues,Remarks,Version,DependencyValues,IVAL;
+            CommV2b.setText(row[7]);
+            Tools.DebugHelperPrint(row[7], true, "UpidTK.enableDebug");
+            String temp = row[0];
+            String UPID20P = "|O|"+temp.substring(0,4)+"|"+temp.substring(16,18)+"|"+temp.substring(18,20)+"|"
+                    +temp.substring(4,8)+"|"+temp.substring(8,12)+"|"+temp.substring(12,14)+"|"+temp.substring(14,16)+"|";
+            LblUPID20.setText(UPID20P);
+            temp = row[2];
+            Tools.DebugHelperPrint(temp, true, "UpidTK.enableDebug");
+            lblCsumV20_14.setText(temp.substring(0,14));
+            lblCsumV2_14_28.setText(temp.substring(14,28));
+            lblcsumv2_28.setText(temp.substring(28));
+            lblShortCode.setText(row[3]);
+            String FlagList = row[6].substring(2);
+            lblFlagsV.setText("|"+FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|"+FlagList.substring(6,7)+"|X|X|X|X|X|X|");
+                    
+                    
+                    //FlagList.substring(4,5)+"|  |"+FlagList.substring(8,9)+"|"+FlagList.substring(3,4)+"|  |  |"
+                   // +FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|");
+        
+            lblIVAlFlagsV2.setText(row[10]+"|"+FlagList.substring(4,5)+"|"+FlagList.substring(0,1));
+            
+            String depExists = "D";
+            if(row[8].equals("NotImplementedYet"))
+                depExists="N";
+            if(row[8].equals("Enabled"))
+                depExists="X";
+            
+            
+            lblTopFlagsV2.setText(FlagList.substring(8,9)+"|"+FlagList.substring(7,8)+"|"+FlagList.substring(5,6)+"|"+depExists);
+            String buydate= row[4];//4
+            String regdate= row[5];//5
+            String dates=buydate.substring(0,2)+buydate.substring(3,5)+"|"+buydate.substring(6,8)+"|"
+                    +regdate.substring(0,2)+regdate.substring(3,5)+"|"+regdate.substring(6,8);
+            lblDates.setText(dates);
+            tpReadV2.setVisible(true);
+            tpReadV1.setVisible(false);
+        }
+        else
+        {
+            String temp;                        //
+            //UPID20,LinkageID,CSUM,Shortcode,Eingangsdatum,FlagValues,Remarks,Version,IVAL
+            row = dbc.querySingleRow("Select * from  objreg1 where UPID20='"+UPID+"';",9);
+            CommV1b.setText(row[6]);
+            temp=row[0];
+            String UPID20P = "|O|"+temp.substring(0,4)+"|"+temp.substring(16,18)+"|"+temp.substring(18,20)+"|"
+                    +temp.substring(4,8)+"|"+temp.substring(8,12)+"|"+temp.substring(12,14)+"|"+temp.substring(14,16)+"|";
+            upid20V1.setText(UPID20P);
+            BCSUM1.setText(row[2]);
+            temp = row[3];
+            if(temp.equals("-1")) temp="---";
+            SCV1.setText(temp);
+            String FlagList = row[5].substring(2);
+            lblFlagsRow.setText(FlagList.substring(4,5)+"|  |"+FlagList.substring(8,9)+"|"+FlagList.substring(5,6)+"|  |  |"
+                    +FlagList.substring(2,3)+"|"+FlagList.substring(3,4)+"|"+FlagList.substring(1,2)+"|");
+            lblIVAl.setText(FlagList.substring(6,7)+"|"+row[8]);
+            lblGaveAwayBrow.setText(FlagList.substring(7,8));
+            lblSrcB.setText(FlagList.substring(0,1));
+            String regdate=row[4];
+            lblRegDatBrow.setText(regdate.substring(0,2)+regdate.substring(3,5)+"|"+regdate.substring(6,8));
+            tpReadV1.setVisible(true);
+            tpReadV2.setVisible(false);
+        }       
+    }
+
+    public static void main(String args[]) {
+                                try {
+	    UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );
+	} catch( Exception e ) { 
+	    //e.printStackTrace();
+	}
+        java.awt.EventQueue.invokeLater(new Runnable() {
+
+            @Override
+            public void run() {
+                new IfatzehRTR().setVisible(true);
+            }
+        });
+    }
+    //</editor-fold>
+    
+    // <editor-fold defaultstate="collapsed" desc="GUI_Vars">
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.ButtonGroup ALZRBG;
+    private javax.swing.ButtonGroup ArightsBG;
+    private javax.swing.JLabel BCSUM1;
+    private javax.swing.JLabel BuyDateV2;
+    private javax.swing.JLabel CommExists;
+    private javax.swing.JTextArea CommV1b;
+    private javax.swing.JTextArea CommV2;
+    private javax.swing.JTextArea CommV2b;
+    private javax.swing.JTextArea Comment;
+    private javax.swing.JLabel DependencyDataset;
+    private javax.swing.JLabel Disabled;
+    private javax.swing.JPanel FlagGrid;
+    private javax.swing.JLabel FlagRow;
+    private javax.swing.JPanel FlagsnStuff;
+    private javax.swing.ButtonGroup GaveAWayBG;
+    private javax.swing.JLabel GaveAwAY;
+    private javax.swing.JLabel KKV2;
+    private javax.swing.JLabel LBLCsum;
+    private javax.swing.JLabel LBLMDIF;
+    private javax.swing.JLabel LBLUpidCsum;
+    private javax.swing.JList LSTUPids;
+    private javax.swing.JLabel LblUPID20;
+    private javax.swing.JLabel Lite;
+    private javax.swing.JPanel LowerCOntainer;
+    private javax.swing.JLabel MDFY;
+    private javax.swing.ButtonGroup MDFYBG;
+    private javax.swing.JLabel MFIDV2;
+    private javax.swing.ButtonGroup NSE1BG;
+    private javax.swing.ButtonGroup NSE2BG;
+    private javax.swing.JLabel NonSellable;
+    private javax.swing.ButtonGroup NonsellableBG;
+    private javax.swing.JButton PreVerify;
+    private javax.swing.JLabel RegDate;
+    private javax.swing.JLabel RwgDAteV2;
+    private javax.swing.JLabel SCV1;
+    private javax.swing.JButton Sign;
+    private javax.swing.JButton UPAssistant;
+    private javax.swing.JLabel UpidCsum2;
+    private javax.swing.JPanel UpperArea;
+    private javax.swing.ButtonGroup VIT1BG;
+    private javax.swing.JRadioButton alzrI;
+    private javax.swing.JRadioButton alzrL;
+    private javax.swing.JRadioButton alzrNA;
+    private javax.swing.JRadioButton alzrNV;
+    private javax.swing.JRadioButton alzrU;
+    private javax.swing.JRadioButton arightsNA;
+    private javax.swing.JRadioButton arightsNV;
+    private javax.swing.JRadioButton arightsU;
+    private javax.swing.JButton btnEnabOVR;
+    private javax.swing.JButton btnNewUPID;
+    private javax.swing.JButton btnPachUpidAssist;
+    private javax.swing.JButton btnRefresh;
+    private javax.swing.JButton btnSubmitToDb;
+    private javax.swing.JButton btnSwitchMode;
+    private javax.swing.JCheckBox cXoverride;
+    private javax.swing.JCheckBox cxDepsNEeded;
+    private javax.swing.JCheckBox cxError;
+    private javax.swing.JRadioButton gaveAway2EXP;
+    private javax.swing.JRadioButton gaveAwayU;
+    private javax.swing.JRadioButton gaveawayNA;
+    private javax.swing.JLabel internalValue;
+    private javax.swing.JTextField internalValueN;
+    private javax.swing.JLabel ival_alzr_src;
+    private javax.swing.JButton jButton1;
+    private javax.swing.JLabel jLabel1;
+    private javax.swing.JLabel jLabel10;
+    private javax.swing.JLabel jLabel11;
+    private javax.swing.JLabel jLabel12;
+    private javax.swing.JLabel jLabel13;
+    private javax.swing.JLabel jLabel14;
+    private javax.swing.JLabel jLabel15;
+    private javax.swing.JLabel jLabel16;
+    private javax.swing.JLabel jLabel17;
+    private javax.swing.JLabel jLabel18;
+    private javax.swing.JLabel jLabel19;
+    private javax.swing.JLabel jLabel2;
+    private javax.swing.JLabel jLabel21;
+    private javax.swing.JLabel jLabel22;
+    private javax.swing.JLabel jLabel3;
+    private javax.swing.JLabel jLabel4;
+    private javax.swing.JLabel jLabel5;
+    private javax.swing.JLabel jLabel6;
+    private javax.swing.JLabel jLabel7;
+    private javax.swing.JLabel jLabel8;
+    private javax.swing.JLabel jLabel9;
+    private javax.swing.JPanel jPanel1;
+    private javax.swing.JPanel jPanel2;
+    private javax.swing.JPanel jPanel3;
+    private javax.swing.JPanel jPanel4;
+    private javax.swing.JPanel jPanel5;
+    private javax.swing.JScrollPane jScrollPane1;
+    private javax.swing.JScrollPane jScrollPane2;
+    private javax.swing.JScrollPane jScrollPane3;
+    private javax.swing.JScrollPane jScrollPane4;
+    private javax.swing.JScrollPane jScrollPane5;
+    private javax.swing.JScrollPane jScrollPane6;
+    private javax.swing.JScrollPane jScrollPane7;
+    private javax.swing.JScrollPane jScrollPane8;
+    private javax.swing.JSeparator jSeparator1;
+    private javax.swing.JSeparator jSeparator3;
+    private javax.swing.JTextField kkCsum;
+    private javax.swing.JLabel lblBDAT;
+    private javax.swing.JLabel lblCommFlag;
+    private javax.swing.JLabel lblCommentsLine1;
+    private javax.swing.JLabel lblCsumV20_14;
+    private javax.swing.JLabel lblCsumV2_14_28;
+    private javax.swing.JLabel lblDates;
+    private javax.swing.JLabel lblFlagLine;
+    private javax.swing.JLabel lblFlagsRow;
+    private javax.swing.JLabel lblFlagsV;
+    private javax.swing.JLabel lblGaveAwayBrow;
+    private javax.swing.JLabel lblGaveAwayPr;
+    private javax.swing.JLabel lblGenViaPHP;
+    private javax.swing.JLabel lblIVAl;
+    private javax.swing.JLabel lblIVAlFlagsV2;
+    private javax.swing.JLabel lblKcode;
+    private javax.swing.JLabel lblNumercArea;
+    private javax.swing.JLabel lblRegDatBrow;
+    private javax.swing.JLabel lblRegDate;
+    private javax.swing.JLabel lblShortCode;
+    private javax.swing.JLabel lblSrcB;
+    private javax.swing.JLabel lblTopFlagsV2;
+    private javax.swing.JLabel lblUPID8;
+    private javax.swing.JLabel lblV1AlzrUnselll;
+    private javax.swing.JLabel lblcsumv2_28;
+    private javax.swing.JRadioButton mdfyNA;
+    private javax.swing.JRadioButton mdfyNV;
+    private javax.swing.JRadioButton mdfyU;
+    private javax.swing.JLabel mdfyrow;
+    private javax.swing.JRadioButton nonsellableNA;
+    private javax.swing.JRadioButton nonsellableU;
+    private javax.swing.JRadioButton nse1L;
+    private javax.swing.JRadioButton nse1NA;
+    private javax.swing.JRadioButton nse1NV;
+    private javax.swing.JRadioButton nse1U;
+    private javax.swing.JRadioButton nse2L;
+    private javax.swing.JRadioButton nse2NA;
+    private javax.swing.JRadioButton nse2NV;
+    private javax.swing.JRadioButton nse2U;
+    private javax.swing.JPanel pBrowse;
+    private javax.swing.JPanel pIp;
+    private javax.swing.JPanel pPreview;
+    private javax.swing.JPanel panehViewV2Hinten;
+    private javax.swing.JPanel panelKKPreviewB;
+    private javax.swing.JPanel panelKKPreviewF;
+    private javax.swing.JPanel panelViewV2vorne;
+    private javax.swing.JTabbedPane previewVers1;
+    private javax.swing.JTabbedPane previewVers2;
+    private javax.swing.JTextField regDAteN;
+    private javax.swing.JTabbedPane tpOVW;
+    private javax.swing.JTabbedPane tpReadV1;
+    private javax.swing.JTabbedPane tpReadV2;
+    private javax.swing.JTextField txBDAT;
+    private javax.swing.JTextArea txaCommRest;
+    private javax.swing.JTextArea txaCsumV2;
+    private javax.swing.JTextField txfUPID;
+    private javax.swing.JLabel upid20V1;
+    private javax.swing.JLabel upid8v2;
+    private javax.swing.JLabel upidNumVals;
+    private javax.swing.JTextField upidcsum;
+    private javax.swing.JToggleButton versTogg;
+    private javax.swing.JRadioButton vitA;
+    private javax.swing.JRadioButton vitL;
+    private javax.swing.JRadioButton vitNA;
+    private javax.swing.JRadioButton vitNV;
+    // End of variables declaration//GEN-END:variables
+    //</editor-fold>
+}

+ 25 - 0
UpidTK/src/de/nplusc/upidgen/PublicStorage.java

@@ -0,0 +1,25 @@
+package de.nplusc.upidgen;
+
+
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Lock;
+import java.util.HashMap;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+public class PublicStorage
+{
+    public static DBWriter dbc = new DBWriter("localhost:3306","upidtk", "root","");
+    public static HashMap<String,Object> STO =  new HashMap<>();
+    public static Lock l = new Lock();
+    public static boolean ready;
+}

+ 161 - 0
UpidTK/src/de/nplusc/upidgen/UPIDAssistant.form

@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.8" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <NonVisualComponents>
+    <Component class="javax.swing.JSeparator" name="jSeparator2">
+    </Component>
+  </NonVisualComponents>
+  <Properties>
+    <Property name="defaultCloseOperation" type="int" value="2"/>
+  </Properties>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" attributes="0">
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Group type="102" attributes="0">
+                      <Component id="progressOfAssist" max="32767" attributes="0"/>
+                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                      <Component id="btnContinue" min="-2" max="-2" attributes="0"/>
+                  </Group>
+                  <Group type="102" attributes="0">
+                      <Component id="jSeparator4" min="-2" pref="19" max="-2" attributes="0"/>
+                      <EmptySpace min="-2" max="-2" attributes="0"/>
+                      <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                          <Component id="jSeparator3" alignment="1" max="32767" attributes="0"/>
+                          <Group type="102" alignment="1" attributes="0">
+                              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                                  <Component id="slZSC" alignment="1" max="32767" attributes="0"/>
+                                  <Component id="jScrollPane1" alignment="1" max="32767" attributes="0"/>
+                                  <Component id="lblMsg" alignment="1" min="-2" pref="571" max="-2" attributes="0"/>
+                                  <Component id="txfManualInput" alignment="0" max="32767" attributes="0"/>
+                              </Group>
+                              <EmptySpace min="-2" pref="7" max="-2" attributes="0"/>
+                              <Component id="jSeparator1" min="-2" pref="25" max="-2" attributes="0"/>
+                          </Group>
+                      </Group>
+                      <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                  </Group>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="1" attributes="0">
+          <Group type="102" attributes="0">
+              <Group type="103" groupAlignment="0" attributes="0">
+                  <Group type="102" attributes="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" attributes="0">
+                              <EmptySpace min="-2" pref="20" max="-2" attributes="0"/>
+                              <Component id="lblMsg" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                              <Component id="jScrollPane1" min="-2" pref="171" max="-2" attributes="0"/>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="slZSC" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="txfManualInput" min="-2" max="-2" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="1" attributes="0">
+                              <EmptySpace min="-2" pref="19" max="-2" attributes="0"/>
+                              <Component id="jSeparator1" min="-2" pref="264" max="-2" attributes="0"/>
+                          </Group>
+                      </Group>
+                      <EmptySpace pref="9" max="32767" attributes="0"/>
+                      <Component id="jSeparator3" min="-2" pref="10" max="-2" attributes="0"/>
+                      <EmptySpace pref="9" max="32767" attributes="0"/>
+                  </Group>
+                  <Group type="102" alignment="1" attributes="0">
+                      <Component id="jSeparator4" max="32767" attributes="0"/>
+                      <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                  </Group>
+              </Group>
+              <Group type="103" groupAlignment="0" max="-2" attributes="0">
+                  <Component id="btnContinue" max="32767" attributes="0"/>
+                  <Component id="progressOfAssist" max="32767" attributes="0"/>
+              </Group>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+      <AuxValues>
+        <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+      </AuxValues>
+
+      <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+      <SubComponents>
+        <Component class="javax.swing.JList" name="lstOpt">
+          <Properties>
+            <Property name="model" type="javax.swing.ListModel" editor="org.netbeans.modules.form.RADConnectionPropertyEditor">
+              <Connection code="new javax.swing.DefaultListModel()/*AbstractListModel() {&#xa;    String[] strings = { &quot;Item 1&quot;, &quot;Item 2&quot;, &quot;Item 3&quot;, &quot;Item 4&quot;, &quot;Item 5&quot; };&#xa;    public int getSize() { return strings.length; }&#xa;    public Object getElementAt(int i) { return strings[i]; }&#xa;}*/" type="code"/>
+            </Property>
+          </Properties>
+        </Component>
+      </SubComponents>
+    </Container>
+    <Component class="javax.swing.JButton" name="btnContinue">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Weiter&gt;&gt;"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnContinueActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JProgressBar" name="progressOfAssist">
+      <Properties>
+        <Property name="maximum" type="int" value="7"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JTextField" name="txfManualInput">
+    </Component>
+    <Component class="javax.swing.JLabel" name="lblMsg">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="lblShouldntbeVIsible//\u005c\u005cUsed as MessageOutput" containsInvalidXMLChars="true"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JSlider" name="slZSC">
+      <Properties>
+        <Property name="majorTickSpacing" type="int" value="10"/>
+        <Property name="maximum" type="int" value="99"/>
+        <Property name="minorTickSpacing" type="int" value="1"/>
+        <Property name="paintTicks" type="boolean" value="true"/>
+        <Property name="snapToTicks" type="boolean" value="true"/>
+        <Property name="value" type="int" value="0"/>
+        <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
+          <Dimension value="[600, 33]"/>
+        </Property>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator1">
+      <Properties>
+        <Property name="orientation" type="int" value="1"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator3">
+    </Component>
+    <Component class="javax.swing.JSeparator" name="jSeparator4">
+      <Properties>
+        <Property name="orientation" type="int" value="1"/>
+      </Properties>
+    </Component>
+  </SubComponents>
+</Form>

+ 502 - 0
UpidTK/src/de/nplusc/upidgen/UPIDAssistant.java

@@ -0,0 +1,502 @@
+package de.nplusc.upidgen;
+
+
+
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Tools;
+import java.util.HashMap;
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+public class UPIDAssistant extends javax.swing.JFrame
+{
+    /**
+     * Creates new form UPIDAssistant
+     */
+    
+    
+    
+    private static DBWriter dbc = PublicStorage.dbc;
+    public void clearList()
+    {
+        lstOpt.removeAll();
+        
+        boolean lext = true;
+        while(lext)
+        {
+            try{
+            //lstOpt.remove(0);
+            ((javax.swing.DefaultListModel)lstOpt.getModel()).removeElementAt(0);
+            }
+            catch(Exception e)
+            {
+                lext=false;
+            }
+        }
+        ((javax.swing.DefaultListModel)lstOpt.getModel()).removeAllElements();
+    }
+    
+    public UPIDAssistant()
+    {
+        initComponents();
+        rebuildLST(0);
+        lblMsg.setText("");
+        txfManualInput.setVisible(false);
+        lstOpt.setVisible(true);
+        lblMsg.setVisible(false);
+    }
+    
+    public HashMap<String,String> getMfids()
+    {
+        HashMap<String,String> ret = new HashMap<>();
+        String[][] mfidtable = dbc.queryTable("select * from mfids" , 2);
+        for (String[] line : mfidtable)
+        {
+                ret.put(line[0],line[1]);
+        }
+                        
+           //<editor-fold defaultstate="collapsed" desc=" Fail">     
+       /*         
+                
+    HashMap<String,String> ret = new HashMap<>();
+    Connection cn = null;
+    Statement  st = null;
+    ResultSet  rs = null;
+    try {
+      // Select fitting database driver and connect:
+      Class.forName("com.mysql.jdbc.Driver");
+      cn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/upidtk","root","");
+      st = cn.createStatement();
+      rs = st.executeQuery( "select * from mfids" );
+    
+      String mfid,desc;
+        if(rs!=null)
+        {
+            while(rs.next())
+            {
+                
+                mfid = rs.getString(1);
+                desc = rs.getString(2);
+                ret.put(mfid,desc);
+            }
+            rs.close();
+        }
+    }
+        catch (Exception e)
+    {
+        
+    }*/
+        //</editor-fold>
+        return ret;
+    }
+    public HashMap<String,String> getPSC(String LMFID)//Wenn PSC = -- dann freie Eingabe erforderlich. Desc enthält dann den BEschreibungstext
+    {
+        
+        HashMap<String,String> ret = new HashMap<>();
+        String[][] mfidtable = dbc.queryTable( "select PSC,Descrip from psc where MFID like '"+LMFID+"'" , 2);
+        for (String[] line : mfidtable)
+        {
+                ret.put(line[0],line[1]);
+        }
+        return ret;
+         //<editor-fold defaultstate="collapsed" desc=" Fail">   
+    /*
+    
+    Connection cn = null;
+    Statement  st = null;
+    ResultSet  rs = null;
+    try {
+      // Select fitting database driver and connect:
+      Class.forName("com.mysql.jdbc.Driver");
+      cn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/upidtk","root","");
+      st = cn.createStatement();
+      rs = st.executeQuery( "select PSC,Descrip from psc where MFID like '"+LMFID+"'" );
+    
+      String psc,desc;
+        if(rs!=null)
+        {
+            while(rs.next())
+            {
+                
+                psc = rs.getString(1);
+                desc = rs.getString(2);
+                ret.put(psc,desc);
+            }
+            rs.close();
+        }
+    }
+        catch (Exception e)
+    {
+        
+    }
+        return ret;*/
+        //</editor-fold>
+    }
+    public HashMap<String,String> getSrcs()
+    {
+        
+        
+                
+        HashMap<String,String> ret = new HashMap<>();
+        String[][] mfidtable = dbc.queryTable( "select value,name from srcs" , 2);
+        for (String[] line : mfidtable)
+        {
+            
+                String tmp=line[0];
+
+                String lsrc = Tools.padLeft(2, tmp, '0');
+                String desc = line[1];
+                ret.put(lsrc,desc);
+        }
+        return ret;
+         //<editor-fold defaultstate="collapsed" desc=" Fail">   
+        /*
+    HashMap<String,String> ret = new HashMap<>();
+    Connection cn = null;
+    Statement  st = null;
+    ResultSet  rs = null;
+    try {
+      // Select fitting database driver and connect:
+      Class.forName("com.mysql.jdbc.Driver");
+      cn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/upidtk","root","");
+      st = cn.createStatement();
+      rs = st.executeQuery( "select value,name from srcs" );
+      String src;
+      String desc;
+        if(rs!=null)
+        {
+            while(rs.next())
+            {
+                String tmp=rs.getString(1);
+
+                src = Tools.padLeft(2, tmp, '0');
+                desc = rs.getString(2);
+                ret.put(src,desc);
+            }
+            rs.close();
+        }
+    }
+        catch (Exception e)
+    {
+        //System.err.println("Verfotzte Scheisse");
+        //e.printStackTrace();
+    }
+        return ret;*/
+        //</editor-fold>
+    }
+    /**
+     * This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        jSeparator2 = new javax.swing.JSeparator();
+        jScrollPane1 = new javax.swing.JScrollPane();
+        lstOpt = new javax.swing.JList();
+        btnContinue = new javax.swing.JButton();
+        progressOfAssist = new javax.swing.JProgressBar();
+        txfManualInput = new javax.swing.JTextField();
+        lblMsg = new javax.swing.JLabel();
+        slZSC = new javax.swing.JSlider();
+        jSeparator1 = new javax.swing.JSeparator();
+        jSeparator3 = new javax.swing.JSeparator();
+        jSeparator4 = new javax.swing.JSeparator();
+
+        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+
+        lstOpt.setModel(new javax.swing.DefaultListModel()/*AbstractListModel() {
+            String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
+            public int getSize() { return strings.length; }
+            public Object getElementAt(int i) { return strings[i]; }
+        }*/);
+        jScrollPane1.setViewportView(lstOpt);
+
+        btnContinue.setText("Weiter>>");
+        btnContinue.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnContinueActionPerformed(evt);
+            }
+        });
+
+        progressOfAssist.setMaximum(7);
+
+        lblMsg.setText("lblShouldntbeVIsible//\\\\Used as MessageOutput");
+
+        slZSC.setMajorTickSpacing(10);
+        slZSC.setMaximum(99);
+        slZSC.setMinorTickSpacing(1);
+        slZSC.setPaintTicks(true);
+        slZSC.setSnapToTicks(true);
+        slZSC.setValue(0);
+        slZSC.setPreferredSize(new java.awt.Dimension(600, 33));
+
+        jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL);
+
+        jSeparator4.setOrientation(javax.swing.SwingConstants.VERTICAL);
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addContainerGap()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addComponent(progressOfAssist, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                        .addComponent(btnContinue))
+                    .addGroup(layout.createSequentialGroup()
+                        .addComponent(jSeparator4, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                            .addComponent(jSeparator3, javax.swing.GroupLayout.Alignment.TRAILING)
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                                    .addComponent(slZSC, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                                    .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING)
+                                    .addComponent(lblMsg, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 571, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                    .addComponent(txfManualInput))
+                                .addGap(7, 7, 7)
+                                .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                        .addGap(0, 0, Short.MAX_VALUE)))
+                .addContainerGap())
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+            .addGroup(layout.createSequentialGroup()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(layout.createSequentialGroup()
+                                .addGap(20, 20, 20)
+                                .addComponent(lblMsg)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 171, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(slZSC, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(txfManualInput, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                                .addGap(19, 19, 19)
+                                .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 264, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 9, Short.MAX_VALUE)
+                        .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 9, Short.MAX_VALUE))
+                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                        .addComponent(jSeparator4)
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)))
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
+                    .addComponent(btnContinue, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .addComponent(progressOfAssist, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    private void rebuildLST(int stg)
+    {
+        slZSC.setVisible(false);
+        clearList();
+        if(stg==0)
+        {
+           
+            HashMap<String,String> mfidsel = getMfids();
+            String[] keys = mfidsel.keySet().toArray(new String[0]);
+            for (String string : keys)
+            {
+                String val = mfidsel.get(string);
+                ((javax.swing.DefaultListModel)lstOpt.getModel()).addElement(string+"|"+val);
+            }
+        }
+        if(stg==1)
+        {
+            HashMap<String,String> psc = getPSC(MFID);
+            String[] psca = psc.keySet().toArray(new String[0]);
+            if(psca[0].equals("--"))
+            {
+                txfManualInput.setVisible(true);
+                lstOpt.setVisible(false);
+                jScrollPane1.setVisible(false);
+                lblMsg.setVisible(true);
+                lblMsg.setText(psc.get("--"));
+                freetype=true;
+            }
+            else
+            {
+                txfManualInput.setVisible(false);
+                lstOpt.setVisible(true);
+                jScrollPane1.setVisible(true);
+                lblMsg.setVisible(false);
+                for (String string : psca)
+                {
+                    String val = psc.get(string);
+                    ((javax.swing.DefaultListModel)lstOpt.getModel()).addElement(string+"|"+val);
+                }
+                freetype=false;
+            }
+        }
+        if(stg==2)
+        {
+               txfManualInput.setVisible(true);
+                lstOpt.setVisible(false);
+                jScrollPane1.setVisible(false);
+                lblMsg.setVisible(true);
+                lblMsg.setText("UPID6 eingeben");
+        }
+        if(stg==3)
+        {
+            slZSC.setVisible(true);
+            lblMsg.setText("Zustand auf Skala auswählen. 00 = NEuware");
+            txfManualInput.setVisible(false);
+        }
+        if(stg==4)
+        {
+            clearList();
+            txfManualInput.setVisible(false);
+            lstOpt.setVisible(true);
+            jScrollPane1.setVisible(true);
+            lblMsg.setVisible(false);
+            HashMap<String,String> srcsel = getSrcs();
+            String[] keys = srcsel.keySet().toArray(new String[0]);
+            for (String string : keys)
+            {
+                String val = srcsel.get(string);
+                ((javax.swing.DefaultListModel)lstOpt.getModel()).addElement(string+"|"+val);
+            }
+        }
+    }
+    private void btnContinueActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnContinueActionPerformed
+    {//GEN-HEADEREND:event_btnContinueActionPerformed
+        if(stage==0)
+        {
+            MFID = ((String)lstOpt.getSelectedValue()).substring(0,4);
+
+        }
+        if(stage==1)
+        {
+            if(freetype)
+            {
+                PSC=txfManualInput.getText().substring(0,2);
+            }
+            else
+            {
+                PSC=((String)lstOpt.getSelectedValue()).substring(0,2);
+            }
+        }
+        if(stage==2)
+        {
+            UPID6=txfManualInput.getText().substring(0,6);
+        }
+        
+        if(stage==3)
+        {
+            zsc=slZSC.getValue();
+            
+        }
+        if(stage==4)
+        {
+            src=Integer.parseInt(((String)lstOpt.getSelectedValue()).substring(0,2));
+            Object[] opu = new Object[5];
+            opu[0] = MFID;
+            opu[1] = PSC;
+            opu[2] = UPID6;
+            opu[3] = zsc;
+            opu[4] = src;
+            PublicStorage.STO.put("upid",opu);
+            PublicStorage.l.unlock();
+            this.setVisible(false);
+        }
+        if(stage<4)
+        {
+            stage++;
+            rebuildLST(stage);
+        }
+    }//GEN-LAST:event_btnContinueActionPerformed
+    
+    public String MFID,PSC,UPID6;//|MFID - PSC UPID6-zsc-src
+    public int zsc,src,stage=0;          //|
+    public boolean freetype = false;
+    
+    /**
+     * @param args the command line arguments
+     */
+    public static void main(String args[])
+    {
+        /*
+         * Set the Nimbus look and feel
+         */
+        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
+        /*
+         * If Nimbus (introduced in Java SE 6) is not available, stay with the
+         * default look and feel.
+         * For details see
+         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
+         */
+        try
+        {
+            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels())
+            {
+                if ("Nimbus".equals(info.getName()))
+                {
+                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
+                    break;
+                }
+            }
+        }
+        catch (ClassNotFoundException ex)
+        {
+            java.util.logging.Logger.getLogger(UPIDAssistant.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        catch (InstantiationException ex)
+        {
+            java.util.logging.Logger.getLogger(UPIDAssistant.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        catch (IllegalAccessException ex)
+        {
+            java.util.logging.Logger.getLogger(UPIDAssistant.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        catch (javax.swing.UnsupportedLookAndFeelException ex)
+        {
+            java.util.logging.Logger.getLogger(UPIDAssistant.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+        }
+        //</editor-fold>
+
+        /*
+         * Create and display the form
+         */
+        java.awt.EventQueue.invokeLater(new Runnable()
+        {
+
+            public void run()
+            {
+                new UPIDAssistant().setVisible(true);
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.JButton btnContinue;
+    private javax.swing.JScrollPane jScrollPane1;
+    private javax.swing.JSeparator jSeparator1;
+    private javax.swing.JSeparator jSeparator2;
+    private javax.swing.JSeparator jSeparator3;
+    private javax.swing.JSeparator jSeparator4;
+    private javax.swing.JLabel lblMsg;
+    private javax.swing.JList lstOpt;
+    private javax.swing.JProgressBar progressOfAssist;
+    private javax.swing.JSlider slZSC;
+    private javax.swing.JTextField txfManualInput;
+    // End of variables declaration//GEN-END:variables
+}

+ 188 - 0
UpidTK/src/de/nplusc/upidgen/UpdateAssistant.form

@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<Form version="1.3" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JFrameFormInfo">
+  <NonVisualComponents>
+    <Component class="javax.swing.ButtonGroup" name="CatBgrp">
+    </Component>
+  </NonVisualComponents>
+  <SyntheticProperties>
+    <SyntheticProperty name="formSizePolicy" type="int" value="1"/>
+  </SyntheticProperties>
+  <AuxValues>
+    <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/>
+    <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/>
+    <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/>
+    <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/>
+    <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/>
+  </AuxValues>
+
+  <Layout>
+    <DimensionLayout dim="0">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" alignment="1" attributes="0">
+              <Group type="103" groupAlignment="1" attributes="0">
+                  <Group type="102" alignment="1" attributes="0">
+                      <EmptySpace max="32767" attributes="0"/>
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Component id="txfDescrip" alignment="0" min="-2" pref="344" max="-2" attributes="0"/>
+                          <Group type="103" alignment="0" groupAlignment="1" max="-2" attributes="0">
+                              <Component id="jLabel3" alignment="0" max="32767" attributes="0"/>
+                              <Group type="102" alignment="1" attributes="0">
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Component id="txfMFID_SRC" max="32767" attributes="0"/>
+                                      <Component id="lblPSC_SRC" alignment="0" min="-2" pref="62" max="-2" attributes="0"/>
+                                  </Group>
+                                  <EmptySpace max="-2" attributes="0"/>
+                                  <Group type="103" groupAlignment="0" attributes="0">
+                                      <Component id="lblPSC" min="-2" max="-2" attributes="0"/>
+                                      <Component id="txfPSC" min="-2" pref="87" max="-2" attributes="0"/>
+                                  </Group>
+                              </Group>
+                          </Group>
+                      </Group>
+                  </Group>
+                  <Group type="102" alignment="0" attributes="0">
+                      <Group type="103" groupAlignment="0" attributes="0">
+                          <Group type="102" alignment="0" attributes="0">
+                              <EmptySpace min="-2" pref="38" max="-2" attributes="0"/>
+                              <Component id="x1t" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                              <Component id="add" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace max="-2" attributes="0"/>
+                              <Component id="addandX1t" min="-2" max="-2" attributes="0"/>
+                          </Group>
+                          <Group type="102" alignment="0" attributes="0">
+                              <EmptySpace min="-2" pref="123" max="-2" attributes="0"/>
+                              <Component id="btnMFID" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                              <Component id="btnPSC" min="-2" max="-2" attributes="0"/>
+                              <EmptySpace type="separate" max="-2" attributes="0"/>
+                              <Component id="btnSRC" min="-2" max="-2" attributes="0"/>
+                          </Group>
+                      </Group>
+                      <EmptySpace min="0" pref="0" max="32767" attributes="0"/>
+                  </Group>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+    <DimensionLayout dim="1">
+      <Group type="103" groupAlignment="0" attributes="0">
+          <Group type="102" alignment="0" attributes="0">
+              <EmptySpace min="-2" pref="21" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="btnMFID" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="btnPSC" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="btnSRC" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace min="-2" pref="48" max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="lblPSC_SRC" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="lblPSC" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="txfMFID_SRC" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="txfPSC" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace type="unrelated" max="-2" attributes="0"/>
+              <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+              <EmptySpace min="-2" pref="6" max="-2" attributes="0"/>
+              <Component id="txfDescrip" min="-2" max="-2" attributes="0"/>
+              <EmptySpace pref="79" max="32767" attributes="0"/>
+              <Group type="103" groupAlignment="3" attributes="0">
+                  <Component id="add" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="x1t" alignment="3" min="-2" max="-2" attributes="0"/>
+                  <Component id="addandX1t" alignment="3" min="-2" max="-2" attributes="0"/>
+              </Group>
+              <EmptySpace max="-2" attributes="0"/>
+          </Group>
+      </Group>
+    </DimensionLayout>
+  </Layout>
+  <SubComponents>
+    <Component class="javax.swing.JRadioButton" name="btnMFID">
+      <Properties>
+        <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+          <ComponentRef name="CatBgrp"/>
+        </Property>
+        <Property name="text" type="java.lang.String" value="MFID"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnMFIDActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JRadioButton" name="btnPSC">
+      <Properties>
+        <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+          <ComponentRef name="CatBgrp"/>
+        </Property>
+        <Property name="text" type="java.lang.String" value="PSC"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPSCActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JRadioButton" name="btnSRC">
+      <Properties>
+        <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
+          <ComponentRef name="CatBgrp"/>
+        </Property>
+        <Property name="text" type="java.lang.String" value="SRC"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSRCActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JTextField" name="txfMFID_SRC">
+    </Component>
+    <Component class="javax.swing.JTextField" name="txfPSC">
+    </Component>
+    <Component class="javax.swing.JTextField" name="txfDescrip">
+    </Component>
+    <Component class="javax.swing.JLabel" name="lblPSC_SRC">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="---"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JLabel" name="lblPSC">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="PSC (bei spezialvermerk &quot;--&quot; verwenden)"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JLabel" name="jLabel3">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Beschreibung"/>
+      </Properties>
+    </Component>
+    <Component class="javax.swing.JButton" name="add">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Hinzuf&#xfc;gen"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="addActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="x1t">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Abbrechen"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="x1tActionPerformed"/>
+      </Events>
+    </Component>
+    <Component class="javax.swing.JButton" name="addandX1t">
+      <Properties>
+        <Property name="text" type="java.lang.String" value="Hinzuf&#xfc;gen und beenden"/>
+      </Properties>
+      <Events>
+        <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="addandX1tActionPerformed"/>
+      </Events>
+    </Component>
+  </SubComponents>
+</Form>

+ 307 - 0
UpidTK/src/de/nplusc/upidgen/UpdateAssistant.java

@@ -0,0 +1,307 @@
+package de.nplusc.upidgen;
+
+
+import de.nplusc.izc.tools.IOtools.DBWriter;
+import de.nplusc.izc.tools.baseTools.Tools;
+import javax.swing.UnsupportedLookAndFeelException;
+
+
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+public class UpdateAssistant extends javax.swing.JFrame
+{
+
+    /**
+     * Creates new form UpdateAssistant
+     */
+    int mode = 1;
+    private static DBWriter UPIDb = PublicStorage.dbc;
+    public UpdateAssistant()
+    {
+        initComponents();
+        btnMFID.setSelected(true);
+        btnMFIDActionPerformed(null);
+    }
+
+    public boolean patchDb()
+    {
+        //INSERT INTO Persons VALUES (4,'Nilsen', 'Johan', 'Bakken 2', 'Stavanger')
+        
+        
+        String Query = "";
+        if(mode==1)
+        {
+            
+            Query="INSERT INTO mfids VALUES('"+txfMFID_SRC.getText()+"','"+txfDescrip.getText()+"')";
+        }
+        if(mode==2)
+        {
+            Query="INSERT INTO psc (MFID,PSC,descrip)VALUES('"+txfMFID_SRC.getText()+"','"+txfPSC.getText()+"','"+txfDescrip.getText()+"')";
+        }
+        if(mode==3)
+        {
+            Query="INSERT INTO srcs VALUES("+txfMFID_SRC.getText()+",'"+txfDescrip.getText()+"')";
+        }
+        Tools.DebugHelperPrint(Query, true, "UpidTK.enableDebug");
+        return UPIDb.write(Query);
+       // return false;
+    }
+    /**
+     * This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
+
+        CatBgrp = new javax.swing.ButtonGroup();
+        btnMFID = new javax.swing.JRadioButton();
+        btnPSC = new javax.swing.JRadioButton();
+        btnSRC = new javax.swing.JRadioButton();
+        txfMFID_SRC = new javax.swing.JTextField();
+        txfPSC = new javax.swing.JTextField();
+        txfDescrip = new javax.swing.JTextField();
+        lblPSC_SRC = new javax.swing.JLabel();
+        lblPSC = new javax.swing.JLabel();
+        jLabel3 = new javax.swing.JLabel();
+        add = new javax.swing.JButton();
+        x1t = new javax.swing.JButton();
+        addandX1t = new javax.swing.JButton();
+
+        CatBgrp.add(btnMFID);
+        btnMFID.setText("MFID");
+        btnMFID.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnMFIDActionPerformed(evt);
+            }
+        });
+
+        CatBgrp.add(btnPSC);
+        btnPSC.setText("PSC");
+        btnPSC.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnPSCActionPerformed(evt);
+            }
+        });
+
+        CatBgrp.add(btnSRC);
+        btnSRC.setText("SRC");
+        btnSRC.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                btnSRCActionPerformed(evt);
+            }
+        });
+
+        lblPSC_SRC.setText("---");
+
+        lblPSC.setText("PSC (bei spezialvermerk \"--\" verwenden)");
+
+        jLabel3.setText("Beschreibung");
+
+        add.setText("Hinzufügen");
+        add.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                addActionPerformed(evt);
+            }
+        });
+
+        x1t.setText("Abbrechen");
+        x1t.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                x1tActionPerformed(evt);
+            }
+        });
+
+        addandX1t.setText("Hinzufügen und beenden");
+        addandX1t.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                addandX1tActionPerformed(evt);
+            }
+        });
+
+        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
+        getContentPane().setLayout(layout);
+        layout.setHorizontalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+                    .addGroup(layout.createSequentialGroup()
+                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addComponent(txfDescrip, javax.swing.GroupLayout.PREFERRED_SIZE, 344, javax.swing.GroupLayout.PREFERRED_SIZE)
+                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
+                                .addComponent(jLabel3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                                .addGroup(layout.createSequentialGroup()
+                                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                        .addComponent(txfMFID_SRC)
+                                        .addComponent(lblPSC_SRC, javax.swing.GroupLayout.PREFERRED_SIZE, 62, javax.swing.GroupLayout.PREFERRED_SIZE))
+                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                                        .addComponent(lblPSC)
+                                        .addComponent(txfPSC, javax.swing.GroupLayout.PREFERRED_SIZE, 87, javax.swing.GroupLayout.PREFERRED_SIZE))))))
+                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
+                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+                            .addGroup(layout.createSequentialGroup()
+                                .addGap(38, 38, 38)
+                                .addComponent(x1t)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                                .addComponent(add)
+                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                                .addComponent(addandX1t))
+                            .addGroup(layout.createSequentialGroup()
+                                .addGap(123, 123, 123)
+                                .addComponent(btnMFID)
+                                .addGap(18, 18, 18)
+                                .addComponent(btnPSC)
+                                .addGap(18, 18, 18)
+                                .addComponent(btnSRC)))
+                        .addGap(0, 0, Short.MAX_VALUE)))
+                .addContainerGap())
+        );
+        layout.setVerticalGroup(
+            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(layout.createSequentialGroup()
+                .addGap(21, 21, 21)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(btnMFID)
+                    .addComponent(btnPSC)
+                    .addComponent(btnSRC))
+                .addGap(48, 48, 48)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(lblPSC_SRC)
+                    .addComponent(lblPSC))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(txfMFID_SRC, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                    .addComponent(txfPSC, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addComponent(jLabel3)
+                .addGap(6, 6, 6)
+                .addComponent(txfDescrip, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 79, Short.MAX_VALUE)
+                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
+                    .addComponent(add)
+                    .addComponent(x1t)
+                    .addComponent(addandX1t))
+                .addContainerGap())
+        );
+
+        pack();
+    }// </editor-fold>//GEN-END:initComponents
+
+    private void btnSRCActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnSRCActionPerformed
+    {//GEN-HEADEREND:event_btnSRCActionPerformed
+       mode=3;
+       txfPSC.setVisible(false);
+       lblPSC.setVisible(false);
+       lblPSC_SRC.setText("Source-Number");
+    }//GEN-LAST:event_btnSRCActionPerformed
+
+    private void btnMFIDActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnMFIDActionPerformed
+    {//GEN-HEADEREND:event_btnMFIDActionPerformed
+        mode=1;
+        txfPSC.setVisible(false);
+        lblPSC.setVisible(false);
+        lblPSC_SRC.setText("MFID");
+    }//GEN-LAST:event_btnMFIDActionPerformed
+
+    private void btnPSCActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_btnPSCActionPerformed
+    {//GEN-HEADEREND:event_btnPSCActionPerformed
+        mode=2;
+        txfPSC.setVisible(true);
+        lblPSC.setVisible(true);
+        lblPSC_SRC.setText("MFID");
+    }//GEN-LAST:event_btnPSCActionPerformed
+
+    private void addActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_addActionPerformed
+    {//GEN-HEADEREND:event_addActionPerformed
+        patchDb();
+        txfDescrip.setText("");
+        txfMFID_SRC.setText("");
+        txfPSC.setText("");
+    }//GEN-LAST:event_addActionPerformed
+
+    private void addandX1tActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_addandX1tActionPerformed
+    {//GEN-HEADEREND:event_addandX1tActionPerformed
+        patchDb();
+        this.setVisible(false);
+    }//GEN-LAST:event_addandX1tActionPerformed
+
+    private void x1tActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_x1tActionPerformed
+    {//GEN-HEADEREND:event_x1tActionPerformed
+        this.setVisible(false);
+    }//GEN-LAST:event_x1tActionPerformed
+
+    /**
+     * @param args the command line arguments
+     */
+    @SuppressWarnings("CallToThreadDumpStack")
+    public static void main(String args[])
+    {
+        /*
+         * Set the Nimbus look and feel
+         */
+        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
+        /*
+         * If Nimbus (introduced in Java SE 6) is not available, stay with the
+         * default look and feel.
+         * For details see
+         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
+         */
+        try
+        {
+            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels())
+            {
+                if ("Nimbus".equals(info.getName()))
+                {
+                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
+                    break;
+                }
+            }
+        }
+        catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex)
+        {
+            Tools.DebugHelperPrint("Init.fail(\"UpidAssistantInit\")", true, "UpidTK.enableDebug");
+            ex.printStackTrace();
+        }
+
+        //</editor-fold>
+
+        /*
+         * Create and display the form
+         */
+        java.awt.EventQueue.invokeLater(new Runnable()
+        {
+
+            public void run()
+            {
+                new UpdateAssistant().setVisible(true);
+            }
+        });
+    }
+    // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.ButtonGroup CatBgrp;
+    private javax.swing.JButton add;
+    private javax.swing.JButton addandX1t;
+    private javax.swing.JRadioButton btnMFID;
+    private javax.swing.JRadioButton btnPSC;
+    private javax.swing.JRadioButton btnSRC;
+    private javax.swing.JLabel jLabel3;
+    private javax.swing.JLabel lblPSC;
+    private javax.swing.JLabel lblPSC_SRC;
+    private javax.swing.JTextField txfDescrip;
+    private javax.swing.JTextField txfMFID_SRC;
+    private javax.swing.JTextField txfPSC;
+    private javax.swing.JButton x1t;
+    // End of variables declaration//GEN-END:variables
+}

+ 106 - 0
UpidTK/src/res_DbTableShow.java-da

@@ -0,0 +1,106 @@
+
+
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author LH
+ */
+import java.io.*;
+import java.sql.*;
+
+public class DbTableShow
+{
+  public static void main( String[] args )
+  {
+    String dbTbl=null, dbDrv=null, dbUrl=null, dbUsr="", dbPwd="";
+    if( args.length > 2 ) {
+      dbTbl = args[0];
+      dbDrv = args[1];
+      dbUrl = args[2];
+      if( args.length > 3 )  dbUsr = args[3];
+      if( args.length > 4 )  dbPwd = args[4];
+    } else {
+      try {
+        BufferedReader in = new BufferedReader( new InputStreamReader( System.in ) );
+        System.out.println( "Name der Tabelle eingeben (z.B. MeineTestTabelle):" );
+        dbTbl = in.readLine();
+        System.out.println( "Name des Datenbanktreibers eingeben (z.B. com.mysql.jdbc.Driver):" );
+        dbDrv = in.readLine();
+        System.out.println( "Url der Datenbank eingeben (z.B. jdbc:mysql://localhost:3306/MeineDb):" );
+        dbUrl = in.readLine();
+        System.out.println( "Benutzername (z.B. root):" );
+        dbUsr = in.readLine();
+        System.out.println( "Passwort (z.B. mysqlpwd):" );
+        dbPwd = in.readLine();
+      } catch( IOException ex ) {
+        System.out.println( ex );
+      }
+    }
+    showDbTable( dbTbl, dbDrv, dbUrl, dbUsr, dbPwd );
+  }
+
+  static void showDbTable( String dbTbl, String dbDrv, String dbUrl, String dbUsr, String dbPwd )
+  {
+    if( dbTbl == null || dbTbl.length() == 0 ||
+        dbDrv == null || dbDrv.length() == 0 ||
+        dbUrl == null || dbUrl.length() == 0 ) {
+      System.out.println( "Fehler: Parameter fehlt." );
+      return;
+    }
+    Connection cn = null;
+    Statement  st = null;
+    ResultSet  rs = null;
+    try {
+      // Select fitting database driver and connect:
+      Class.forName("com.mysql.jdbc.Driver");
+      cn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/upidtk","root",null );
+      st = cn.createStatement();
+      rs = st.executeQuery( "select * from " + dbTbl );
+      // Get meta data:
+      ResultSetMetaData rsmd = rs.getMetaData();
+      int i, n = rsmd.getColumnCount();
+      // Print table content:
+      for( i=0; i<n; i++ )
+        System.out.print( "+---------------" );
+      System.out.println( "+" );
+      for( i=1; i<=n; i++ )    // Attention: first column with 1 instead of 0
+        System.out.print( "| " + extendStringTo14( rsmd.getColumnName( i ) ) );
+      System.out.println( "|" );
+      for( i=0; i<n; i++ )
+        System.out.print( "+---------------" );
+      System.out.println( "+" );
+      while( rs.next() ) {
+        for( i=1; i<=n; i++ )  // Attention: first column with 1 instead of 0
+          System.out.print( "| " + extendStringTo14( rs.getString( i ) ) );
+        System.out.println( "|" );
+      }
+      for( i=0; i<n; i++ )
+        System.out.print( "+---------------" );
+      System.out.println( "+" );
+    } catch( Exception ex ) {
+      System.out.println( ex );
+    } finally {
+      try { if( rs != null ) rs.close(); } catch( Exception ex ) {/* nothing to do*/}
+      try { if( st != null ) st.close(); } catch( Exception ex ) {/* nothing to do*/}
+      try { if( cn != null ) cn.close(); } catch( Exception ex ) {/* nothing to do*/}
+    }
+  }
+
+  // Extend String to length of 14 characters
+  static final String extendStringTo14( String s )
+  {
+    if( s == null ) { s = ""; }
+    final String sFillStrWithWantLen = "              ";
+    final int iWantLen = sFillStrWithWantLen.length();
+    final int iActLen  = s.length();
+    if( iActLen < iWantLen )
+      return (s + sFillStrWithWantLen).substring( 0, iWantLen );
+    if( iActLen > 2 * iWantLen )
+      return s.substring( 0, 2 * iWantLen );
+    return s;
+  }
+}