#include "epm_handler_common.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "tc/envelope.h" #include #include "ae/dataset.h" #include #include #include #include #include #include #include #include "ce/ce.h" #include #include #include #include #include #include "string" #include "sstream" #include #include #include #include
#include "ctime" #include "tchar.h" #include #include #include using namespace std; extern "C" int POM_AM__set_application_bypass(logical bypass); int jd_complate_first_task(EPM_action_message_t msg) { //Sleep(10000); AOM_refresh(msg.task, false); POM_AM__set_application_bypass(true); tag_t parent, *valids; char *type, *status; int valid_cnt; AOM_ask_value_string(msg.task, "object_type", &type); EPM_ask_parent_task(msg.task, &parent); //AOM_ask_value_tags(parent, "valid_signoffs", &valid_cnt, &valids); EPM_ask_attachments(msg.task, EPM_signoff_attachment, &valid_cnt, &valids); AOM_ask_value_string(msg.task, "task_result", &status); printf("type====>%s\nstatus====>%s\nvalid_cnt====>%d\n", type, status, valid_cnt); if (tc_strcmp("Completed", status) == 0) { POM_AM__set_application_bypass(false); return 0; } if (tc_strcmp("EPMSelectSignoffTask", type) == 0 && valid_cnt > 0) { printf("当前任务为signoff任务\n"); ITKCALL(EPM_trigger_action(msg.task, EPM_complete_action, "")); } POM_AM__set_application_bypass(false); return 0; }