Python_ID_Projektdatenblatt
muss mit dem Wert aus dem Feld Python-ID der neu angelegten globalen Einstellung des Projektdatenblatts ersetzt werden.
#Um die Modul-ID aus den globalen Einstellungen auslesen zu koennen #muss das Python-Modul global_setting importiert werden. from ppms.global_setting import get_global_setting_value # 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 = get_global_setting_value("Python_ID_Projektdatenblatt", 'alpha120') #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.global_setting import get_global_setting_value mod_obj = ppms.get_target_module() # Definition der Modul-ID und der Dialogmeldungs-ID target_mod_id = get_global_setting_value("Python_ID_Projektdatenblatt", 'alpha120') dialog_id = get_global_setting_value("Python_ID_Dialogmeldung", 'alpha120') 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.global_setting import get_global_setting_value mod_obj = ppms.get_target_module() target_mod_id = get_global_setting_value("Python_ID_Projektdatenblatt", 'alpha120') dialog_id = get_global_setting_value("Python_ID_Dialogmeldung", 'alpha120') #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.global_setting import get_global_setting_value mod_obj = ppms.get_target_module() # Definition der Modul-IDs und der Dialogmeldungs-ID target_mod_id = get_global_setting_value("Python_ID_Projektdatenblatt", 'alpha120') dialog_id = get_global_setting_value("Python_ID_Dialogmeldung", 'alpha120') target_task_mod_id = get_global_setting_value("Python_ID_Vorgangsdatenblatt", 'alpha120') 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()
get_tasks
definiert, die die Vorgänge des übergebenen Projekts mit Meilenstein = 2 in eine Liste (task_list) schreibt.
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