lydiavamos
New member
Hallo zusammen,
ich habe vor einiger Zeit aus Zeitdruck ziemlich schnell einige Zeilen Code schreiben müssen.
Nun Frage ich mich, wie man das ganze nun optimieren kann. Es geht sicherlich schöner, einfacher und besser. Sicherlich kann man sich auch einige Schleifen sparen bzw. optimieren. Ist nur die große Frage des wie?!:
Gruß
LydiaVamos
ich habe vor einiger Zeit aus Zeitdruck ziemlich schnell einige Zeilen Code schreiben müssen.
Nun Frage ich mich, wie man das ganze nun optimieren kann. Es geht sicherlich schöner, einfacher und besser. Sicherlich kann man sich auch einige Schleifen sparen bzw. optimieren. Ist nur die große Frage des wie?!:
Code:
function kst_aenderung_sub() {
if (document.getElementById("mandant").innerHTML == "xx" && jr_get_value('KST_AENDERUNG') == "" && jr_get_value('ZEIGER_BOX_xx') != "gemeinyy") {
if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
jr_set_value('ZEIGER_KST', '1'); {
var kostenstelle = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle');
jr_set_value("tmp_sub_kst", kostenstelle);
}
jr_sql_refresh("tmp_kst_sub", array_kst_sub);
} else if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
jr_set_value("ZEIGER_KST", "0");
}
if (document.getElementById("mandant").innerHTML == "xx") {
var $kst_sub = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle');
var $kst_res = $kst_sub.substr(8);
if ($kst_res == "0000") {
jr_show_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
jr_show_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_set_required('Rechnunungserfassung_short_kostentraeger_0', 'true');
} else {
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
}
} else if (jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle') == "") {
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
} else {
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
}
if (jr_get_steplabel() == "Rechnungserfassung") {
jr_set_value('ZEIGER_KST', '1'); {
var kostenstelle_all = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle');
jr_set_value("tmp_sub_kst", kostenstelle_all);
}
jr_sql_refresh("tmp_kst_sub", array_kst_sub);
}
}
}
function ktr_aenderung_sub() {
if (document.getElementById("mandant").innerHTML == "xx" && jr_get_value('KST_AENDERUNG') == "" && jr_get_value('ZEIGER_BOX_xx') != "gemeinyy") {
if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Rechnungserfassung" || jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
jr_set_value('ZEIGER_KTR', '1'); {
var kostentraeger = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostentraeger');
jr_set_value("tmp_sub_ktr", kostentraeger);
}
jr_sql_refresh("tmp_ktr_sub", array_ktr_sub);
} else if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Rechnungserfassung" || jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
jr_set_value('ZEIGER_KTR', '0');
}
if (document.getElementById("mandant").innerHTML == "xx") {
var $kst_sub = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle');
var $kst_res = $kst_sub.substr(8);
if ($kst_res == "0000") {
jr_show_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
jr_show_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_set_required('Rechnunungserfassung_short_kostentraeger_0', 'true');
} else {
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
}
} else {
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraegername');
jr_hide_subtable_column('Rechnunungserfassung_short', 'kostentraeger');
}
}
}
function array_kst_sub() {
var myString = jr_get_value("tmp_kst_sub");
var myArray;
if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
if (myString != "") {
myArray = myString.split(";");
jr_set_value("niederlassung", myArray[0]);
jr_set_value("tmp_r4", myArray[1]);
jr_set_value("tmp_r5", myArray[2]);
jr_set_value("tmp_r7", myArray[3]);
if (jr_get_steplabel() == "Endfreigabe") {
jr_set_value("nll_auswahl", myArray[3]);
jr_set_value("nll_pers", myArray[3]);
}
}
if (jr_get_value("tmp_r5") == $JRUSER['userName'] && (jr_get_steplabel() == "Kaufmann")) {
jr_set_value('ZEIGER_BENUTZER', '1');
} else if (jr_get_value("tmp_r7") == $JRUSER['userName'] && (jr_get_steplabel() == "Endfreigabe")) {
jr_set_value('ZEIGER_BENUTZER', '1');
} else {
jr_set_value('ZEIGER_BENUTZER', '0');
}
if (jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostentraeger') != "") {
var $kst_sub = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle');
var $kst_res = $kst_sub.substr(8);
if ($kst_res == "0000") {
array_ktr_sub();
}
}
jr_sql_refresh("tmp_rolle", array_rollen);
}
if (jr_get_steplabel() == "Rechnungserfassung") {
if (myString != "") {
myArray = myString.split(";");
jr_set_value("niederlassung", myArray[0]);
}
jr_sql_refresh("tmp_rolle", array_rollen);
}
}
function array_ktr_sub() {
if (jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle') != "") {
var $kst_sub_1 = jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostenstelle');
var $kst_res_1 = $kst_sub_1.substr(8);
if ($kst_res_1 == "0000" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
var myString_1 = jr_get_value("tmp_ktr_sub");
var myArray_1;
if (myString_1 != "") {
myArray_1 = myString_1.split(";");
jr_set_value("tmp_r4", myArray_1[0]);
jr_set_value("tmp_r7", myArray_1[1]);
jr_set_value("tmp_r5", myArray_1[2]);
if (jr_get_steplabel() == "Endfreigabe") {
jr_set_value("nll_auswahl", myArray_1[1]);
jr_set_value("nll_pers", myArray_1[1]);
}
}
if (jr_get_value("tmp_r5") == $JRUSER['userName'] && (jr_get_steplabel() == "Kaufmann")) {
jr_set_value('ZEIGER_BENUTZER', '1');
} else if (jr_get_value("tmp_r7") == $JRUSER['userName'] && jr_get_steplabel() == "Endfreigabe") {
jr_set_value('ZEIGER_BENUTZER', '1');
} else {
jr_set_value('ZEIGER_BENUTZER', '0');
}
jr_sql_refresh("tmp_rolle", array_rollen);
} else if ($kst_res_1 == "0000" && (jr_get_steplabel() == "Rechnungserfassung")) {
var myString_1 = jr_get_value("tmp_ktr_sub");
var myArray_1;
if (myString_1 != "") {
myArray_1 = myString_1.split(";");
jr_set_value("sachlicher_pruefer", myArray_1[0]);
jr_set_value("nll_auswahl", myArray_1[1]);
jr_set_value("kfm_auswahl", myArray_1[2]);
}
jr_sql_refresh("tmp_rolle", array_rollen);
}
}
}
function array_rollen() {
var myString = jr_get_value("tmp_rolle");
var myArray;
if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
if (myString != "") {
myArray = myString.split(";");
jr_set_value("freigaberolle_tmp", myArray[0]);
jr_set_value("nll_rolle", myArray[1]);
jr_set_value("startrolle", myArray[2]);
jr_set_value("sp_rolle", myArray[3]);
}
VERTRETUNG_AKTIV();
} else if (jr_get_steplabel() == "Rechnungserfassung") {
if (myString != "") {
myArray = myString.split(";");
jr_set_value("freigaberolle", myArray[0]);
jr_set_value("nll_rolle", myArray[1]);
jr_set_value("erfassungsrolle", myArray[2]);
jr_set_value("sp_rolle", myArray[3]);
jr_set_value("ob_rolle", myArray[4]);
}
array_kst_sub_rechnungserfassung();
}
}
function array_kst_sub_rechnungserfassung() {
if (jr_get_subtable_value('Rechnunungserfassung_short', '0', 'kostentraeger') == "") {
var myString = jr_get_value("tmp_kst_sub");
var myArray;
if (jr_get_steplabel() == "Rechnungserfassung") {
if (myString != "") {
myArray = myString.split(";");
jr_set_value("niederlassung", myArray[0]);
jr_set_value("sachlicher_pruefer", myArray[1]);
jr_set_value("kfm_auswahl", myArray[2]);
jr_set_value("nll_auswahl", myArray[3]);
}
}
}
}
function VERTRETUNG_AKTIV() {
if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
jr_sql_refresh("VER_STATUS");
jr_sql_refresh("VERTRETER", VERTRETUNG_OKAY);
} else {
KONTROLLE();
}
}
function VERTRETUNG_OKAY() {
if (document.getElementById("mandant").innerHTML == "xx" && (jr_get_steplabel() == "Kaufmann" || jr_get_steplabel() == "Endfreigabe")) {
if (jr_get_value("VER_STATUS") == "1" && jr_get_value("VERTRETER") == $JRUSER['userName'] && jr_get_value("ZEIGER_BENUTZER") == "1") {
jr_set_value('VERTRETUNG_OK', '1');
jr_set_value('ZEIGER_BENUTZER', '1');
} else if (jr_get_value("VER_STATUS") == "1" && jr_get_value("VERTRETER") == $JRUSER['userName'] && jr_get_value("ZEIGER_BENUTZER") == "0") {
jr_set_value('VERTRETUNG_OK', '1');
jr_set_value('ZEIGER_BENUTZER', '1');
} else if (jr_get_value("VER_STATUS") == "1" && jr_get_value("VERTRETER") != $JRUSER['userName'] && jr_get_value("ZEIGER_BENUTZER") == "0") {
jr_set_value('VERTRETUNG_OK', '0');
jr_set_value('ZEIGER_BENUTZER', '0');
} else if (jr_get_value("VER_STATUS") == "1" && jr_get_value("VERTRETER") != $JRUSER['userName'] && jr_get_value("ZEIGER_BENUTZER") == "1") {
jr_set_value('VERTRETUNG_OK', '0');
jr_set_value('ZEIGER_BENUTZER', '1');
} else if (jr_get_value("VER_STATUS") == "0" && jr_get_value("ZEIGER_BENUTZER") == "1") {
jr_set_value('VERTRETUNG_OK', '0');
jr_set_value('ZEIGER_BENUTZER', '1');
} else if (jr_get_value("VER_STATUS") == "0" && jr_get_value("ZEIGER_BENUTZER") == "0") {
jr_set_value('VERTRETUNG_OK', '0');
jr_set_value('ZEIGER_BENUTZER', '0');
}
}
KONTROLLE();
}
function KONTROLLE() {
if (jr_get_value("tmp_r5") == "" && jr_get_steplabel() == "Kaufmann") {
jr_reset_value("tmp_r5");
jr_set_value('ZEIGER_BENUTZER', '1');
}
if (jr_get_value("tmp_r7") == "" && jr_get_steplabel() == "Kaufmann") {
jr_reset_value("tmp_r7");
}
if (jr_get_value("tmp_r4") == "" && jr_get_steplabel() == "Kaufmann") {
jr_reset_value("tmp_r4");
}
if (jr_get_value("tmp_r7") == "" && jr_get_steplabel() == "Endfreigabe") {
jr_reset_value("tmp_r7");
jr_set_value('ZEIGER_BENUTZER', '1');
jr_reset_value("nll_auswahl");
jr_reset_value("nll_pers");
}
if (jr_get_value("tmp_r5") == "" && jr_get_steplabel() == "Endfreigabe") {
jr_reset_value("tmp_r5");
}
if (jr_get_value("tmp_r4") == "" && jr_get_steplabel() == "Endfreigabe") {
jr_reset_value("tmp_r4");
}
HKST();
}
function HKST() {
if (jr_get_value("ZEIGER_BENUTZER") == "0") {
jr_show_element("HKST");
} else {
jr_hide_element("HKST");
}
}
Gruß
LydiaVamos