#Um die Modul-ID aus den globalen Einstellungen auslesen zu koennen 
#muss das Python-Modul ppms_cu importiert werden.
from ppms import ppms_cu
# Definition des Modul-Objekts
mod_obj = ppms.get_target_module()
# Definition der Modul-ID. Diese wird mit Hilfe der selbst definierten Python-ID 
# aus den globalen Einstellungen ausgelesen.
target_mod_id=ppms_cu.Helper.get_global_setting("Python_ID_Projektdatenblatt").alpha120.get_value()
#Auslesen der Projekt-ID des Datensatzes auf dem der Link aufgerufen wird
pr_id = ppms.get_context_df().get_record().get_df ("pr_id").get_raw_value()
# Variable L30 fuer das Modul, das aufgerufen wird, setzen
mod_obj.set_new_L_var(30, [pr_id])
#Modul aufrufen
mod_obj.open_module(target_mod_id)pr_id = ppms.get_context_df().get_record().get_df ("pr_id").get_raw_value()pr_id = ppms.get_context_df().get_record().pr_id.get_raw_value()
pr_id = ppms.get_context_df().get_raw_value()
from ppms import ppms_cu
mod_obj = ppms.get_target_module()
# Definition der Modul-ID und der Dialogmeldungs-ID
target_mod_id=ppms_cu.Helper.get_global_setting("Python_ID_Projektdatenblatt").alpha120.get_value()
dialog_id=ppms_cu.Helper.get_global_setting("Python_ID_Dialogmeldung").alpha120.get_value()
 
pr_id = ppms.get_context_df().get_record().get_df ("pr_id").get_raw_value()
mod_obj.set_new_L_var(30, [pr_id])
# Ausgabe der Dialogmeldung
ppms.ui_message_id(dialog_id)
# Klickt der Anwender auf "Ja" ("if"), wird das Modul aufgerufen, 
# sonst ("else") wird der Datensatz markiert.
if ppms.msg_pop().get_reply() == 1:
    mod_obj.open_module(target_mod_id)
else:
    ppms.get_context_df().get_record().mark()from ppms import ppms_cu
mod_obj = ppms.get_target_module()
target_mod_id=ppms_cu.Helper.get_global_setting("Python_ID_Projektdatenblatt").alpha120.get_value()
dialog_id=ppms_cu.Helper.get_global_setting("Python_ID_Dialogmeldung").alpha120.get_value()
#Definition einer Liste der markierten Datensaetze im Projektdatenbereich
#Ist kein Datensatz markiert, ist diese Liste leer
marked_records = ppms.get_context_df().get_record().get_da().get_marked_records()
#Definition einer neuen leeren Liste
project_list=[]
# Ist in der Liste "marked_records" mindestens ein Datensatz vorhanden, wird fuer jeden Datensatz in der 
# Liste "marked_records" die Projekt-ID ausgelesen und in die Liste "project_list" geschrieben. 
# Zusaetzlich wird die Projekt-ID des Datensatzes, auf dem der Link aktiviert wurde, in die 
# Liste geschrieben.
if len(marked_records) > 0:
    for record in marked_records:
        cur_pr_id = record.pr_id.get_raw_value()
        project_list.append(cur_pr_id)
    project_list.append(ppms.get_context_df().get_record().pr_id.get_raw_value())
# Ist die Liste "marked_records" leer, wird die Projekt-ID des Datensatzes, auf dem der Link aktiviert 
# wurde, in die Liste geschrieben.
else:
    project_list.append(ppms.get_context_df().get_record().pr_id.get_raw_value())
mod_obj.set_new_L_var(30, project_list)
ppms.ui_message_id(dialog_id)
if ppms.msg_pop().get_reply() == 1:
    mod_obj.open_module(target_mod_id)
else:
    ppms.get_context_df().get_record().mark()from ppms import ppms_cu
mod_obj = ppms.get_target_module()
# Definition der Modul-IDs und der Dialogmeldungs-ID
target_mod_id=ppms_cu.Helper.get_global_setting("Python_ID_Projektdatenblatt").alpha120.get_value()
dialog_id=ppms_cu.Helper.get_global_setting("Python_ID_Dialogmeldung").alpha120.get_value()
target_task_mod_id=ppms_cu.Helper.get_global_setting("Python_ID_Vorgangsdatenblatt").alpha120.get_value() 
marked_records = ppms.get_context_df().get_record().get_da().get_marked_records()
pr_id = ppms.get_context_df().get_record().pr_id.get_raw_value()
pr_list = [pr_id]
if len(marked_records) > 0:
    for record in marked_records:
        cur_pr_id = record.pr_id.get_raw_value()
        pr_list.append(cur_pr_id)
mod_obj.set_new_L_var(30, pr_list)
ppms.ui_message_id(dialog_id)
if ppms.msg_pop().get_reply() == 1:
    pr_mod_obj = mod_obj.open_module(target_mod_id, forced_status=1)
    # Oeffnen des Vorgangsdatenblattes
    task_mod_obj = pr_mod_obj.open_module(target_task_mod_id, forced_status=2, dock_to_module = pr_mod_obj.get_uid(), foreground=0, focus=0)
    # Ausfuehren der Methode "get_tasks" mit dem Uebergabeparameter "pr_id" 
    # Diese Methode wird im naechsten Modul im Vorgangsdatenblatt definiert.
    task_mod_obj.get_tasks(pr_id)
else:
    ppms.get_context_df().get_record().mark() Select DI001098 FROM DT463 WHERE DI001097='{0}' AND DI006786='{1}' 
# Definition der Methode get_tasks
def get_tasks(pr_id):
    value=2
    sql_query=ppms.get_query("SQL-Statement-ID").format(pr_id,value)
    sql_query_result = ppms.db_select(sql_query)
    task_list=[]
    for record in sql_query_result:
        task_list.append(record[0])
    mod_obj.set_current_L_var(11, task_list)
mod_obj = ppms.get_target_module()
def on_load():
    # Stellt die Methode "get_tasks" dem Modulobjekt zur Verfuegung
    mod_obj.get_tasks = get_tasks
def on_initial_focus():
    mod_obj.menu(12)
def on_focus():
    pass
def on_reset():
    on_initial_focus()
def on_before_mv_switch(old_mv, new_mv):
    pass
def on_after_mv_switch(old_mv, new_mv):
    pass