/*
         * ################################################################################
         */
        public static bool startExportFbFragenKatalog(clsFragenKatalog pFrageKatalog, bool pKnzExportiereAntworten, bool pKnzExportiereKorrekteAntworten, bool pKnzExportiereFalscheAntworten, bool pKnzExportiereAntwortBezeichnung, bool pKnzAntwortReihenfolgeUmstellen)
        {
            bool fkt_ergebnis = false;

            /*
             * Pruefung: Parameter "pFragenKatalog" gleich "null" ?
             *
             * Wurde kein Fragenkatalog uebergeben, wird die Funktion mit FALSE verlassen.
             */
            if (pFrageKatalog == null)
            {
                return(fkt_ergebnis);
            }

            /*
             * Pruefung: Sind Fragen vorhanden ?
             *
             * Sind im Fragenkatalog keine Fragen vorhanden, wird die Funktion mit FALSE verlassen.
             */
            if (pFrageKatalog.getAnzahlFragen() == 0)
            {
                return(fkt_ergebnis);
            }

            /*
             * Letzter Dateiname
             * Aus der INI-Datei wird der Name der letzte Exportname geholt.
             * Dieser Name erscheint dann als Vorauswahl in der Dialog-Box.
             */
            String datei_name = fkIniDatei.readIniDateiName("DATEI_NAME_EXPORT_FRAGENKATALOG");

            /*
             * Dateifilter
             * Die zur Auswahl stehenden Datei-Erweiterungen werden als String initialisiert.
             */
            String datei_filter = "TXT-Datei (*.txt)\0*.txt\0alle Dateien (*.*)\0*.*\0";

            /*
             * Aufruf der Dateiauswahl-Dialog-Box
             */
            //datei_name = "c:\\Daten\\fragenkatalog.txt";// fkCommonDialog.getSaveName(datei_filter, "txt", "c:\\", datei_name, "Exportdatei wählen");
            datei_name = fkCommonDialog.getSaveName(datei_filter, "txt", "c:\\", datei_name, "Exportdatei wählen");

            if (datei_name != null)
            {
                /*
                 * Aufruf der Initialisierungsfunktion
                 */
                initLoesungsbogenVar(KNZ_LOESUNGSBOGEN_VERSON_1, pFrageKatalog);

                fkIniDatei.writeIniDateiName("DATEI_NAME_EXPORT_FRAGENKATALOG", datei_name);

                /*
                 * Aufruf der Exportfunktion fuer den Fragenkatalog
                 */
                fkt_ergebnis = exportTextFragenKatalog(pFrageKatalog, datei_name, pKnzExportiereAntworten, pKnzExportiereKorrekteAntworten, pKnzExportiereFalscheAntworten, pKnzExportiereAntwortBezeichnung, pKnzAntwortReihenfolgeUmstellen);
            }

            return(fkt_ergebnis);
        }
Example #2
0
        /**
         * @return die Anzahl der Fragen im aktuellen Fragenkatalog. Ist kein Fragenkatalog geladen -1
         */
        public int getAnzahlFragen()
        {
            /*
             * Pruefung: Fragenkatalog-Instanz vorhanden ?
             *
             * Ist die Fragenkatalog-Instanz vorhanden, wird
             * dem Aufrufer das Funktionsergebnis der Funktion
             * "getAnzahlFragen" zurueckgegeben.
             *
             * Ist kein Fragenkatalog vorhanden, bekommt der
             * Aufrufder -1 zurueck.
             */
            if (m_fragen_katalog != null)
            {
                m_fragen_katalog.getAnzahlFragen();
            }

            return(-1);
        }
        /*
         * ################################################################################
         */
        public static bool startExportXmlLernFabrik(clsFragenKatalog pFrageKatalog, clsLernFrabrik pLernFrabrik, int pExportModus)
        {
            bool fkt_ergebnis = false;

            if (pFrageKatalog == null)
            {
                return(fkt_ergebnis);
            }

            if (pLernFrabrik == null)
            {
                return(fkt_ergebnis);
            }

            if (pFrageKatalog.getAnzahlFragen() == 0)
            {
                return(fkt_ergebnis);
            }

            if (pLernFrabrik.getAnzahlFragen() == 0)
            {
                return(fkt_ergebnis);
            }

            /*
             * Letzter Dateiname
             * Aus der INI-Datei wird der Name der letzte Exportname geholt.
             * Dieser Name erscheint dann als Vorauswahl in der Dialog-Box.
             */
            String datei_name = fkIniDatei.readIniDateiName("DATEI_NAME_EXPORT_XML_LERN_FABRIK");

            /*
             * Dateifilter
             * Die zur Auswahl stehenden Datei-Erweiterungen werden als String initialisiert.
             */
            String datei_filter = "XML-Datei ( *.xml )\0*.xml\0alle Dateien ( *.* )\0*.*\0";

            /*
             * Aufruf der Dateiauswahl-Dialog-Box
             */
            datei_name = fkCommonDialog.getSaveName(datei_filter, "xml", "c:\\", datei_name, "Exportdatei wählen");

            if (datei_name != null)
            {
                fkIniDatei.writeIniDateiName("DATEI_NAME_EXPORT_XML_LERN_FABRIK", datei_name);

                fkt_ergebnis = exportXmlLernFabrik(pFrageKatalog, pLernFrabrik, pExportModus, datei_name);
            }

            return(fkt_ergebnis);
        }
        /*
         * ################################################################################
         */
        private static bool exportTextFragenKatalog(clsFragenKatalog pFragenKatalog, String pDateiName, bool pKnzExportiereAntworten, bool pKnzExportiereKorrekteAntworten, bool pKnzExportiereFalscheAntworten, bool pKnzExportiereAntwortBezeichnung, bool pKnzAntwortReihenfolgeUmstellen)
        {
            clsStringArray lb_reihenfolge = new clsStringArray();

            lb_reihenfolge.addString("000000000000000000000000Dummyzeile");

            clsFrage temp_frage = null;

            String string_datei_inhalt = "";

            string_datei_inhalt += "Export Abfrage Sitzung " + DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss") + " - " + pFragenKatalog.getDateiName() + NEW_LINE;

            bool pKnzErstelleLoesungsbogen = true;

            bool fkt_ergebnis = true;

            int index_fragen_katalog = 0;

            /*
             * While-Schleife ueber alle Fragen im Fragenkatalog.
             */
            while (index_fragen_katalog < pFragenKatalog.getAnzahlFragen())
            {
                try
                {
                    /*
                     * Frage am aktuellem Index aus dem Fragenkatalog holen.
                     */
                    temp_frage = pFragenKatalog.getIndex(index_fragen_katalog);

                    /*
                     * Pruefung: Frage gesetzt ?
                     *
                     * Ist an der aktuellen Indexpositon keine Frage vorhanden, ist das Ergebnis
                     * der Funktion "getIndes" gleich "null". In so einem Fall wird mit dem
                     * naechsten Index weiter gemacht.
                     *
                     * Ist eine Frage vorhanden, wird diese exportiert.
                     */
                    if (temp_frage != null)
                    {
                        string_datei_inhalt += getFrageExportString(temp_frage, NEW_LINE, pKnzExportiereAntworten, pKnzExportiereKorrekteAntworten, pKnzExportiereFalscheAntworten, pKnzExportiereAntwortBezeichnung, pKnzAntwortReihenfolgeUmstellen);

                        lb_reihenfolge.addString(fkString.right("000000000000000000000" + (knz_use_lfd_nr ? temp_frage.getLfdNummer() : temp_frage.getNummer()), 20) + getKorrektStringFrageX(temp_frage));
                    }
                }
                catch (Exception err_inst)
                {
                    Console.WriteLine("Fehler: errExportTextFragenKatalog\n" + err_inst.Message + "\n\n" + err_inst.StackTrace);
                }

                /*
                 * Index der Fragen im Fragenkatalog um eins erhoehen und mit
                 * der naechsten Frage weitermachen.
                 */
                index_fragen_katalog++;
            }

            /*
             * Erstellung des Loesungsbogens
             * Es wird die Funktion fuer die Erstellung des Loesungsbogens aufgerufen.
             */
            string_datei_inhalt += getSringLoesungsbogen(pKnzErstelleLoesungsbogen, lb_reihenfolge);

            /*
             * Stringarray mit den Daten fuer den Loesungsbogen "clearen"
             * und anschliessend auf "null" stellen.
             */
            lb_reihenfolge.clear();

            lb_reihenfolge = null;

            /*
             * Der erstellte Fragenkatalog wird in der Datei gespeichert
             */
            System.IO.File.WriteAllText(pDateiName, string_datei_inhalt);

            return(fkt_ergebnis);
        }