Environment - Vendor portal, Mailbox, etc. CorrelationProperty_Submit_Invoice Submit_the_invoice Gateway_16gxu6s Gateway_0wt7ine Event_0svbvjn Event_Invoice_is_accepted Gateway_1lbghql Event_0x83ruk Event_0m3ri6v Activity_1ftzr6x Event_0f3d2bp Gateway_1l4tz4i Activity_102t7tk Activity_1lq96cy Event_15y55nw Gateway_05ov5p5 Activity_0o1vc0a Activity_0p88elm Gateway_1717c0p Activity_0cfvsk7 Activity_0fsoa08 Event_1b58a3z Activity_0fq1nb4 Event_0bvopx2 Activity_08koius Activity_0gkejaj Activity_1ucvkk4 SubProcess_Data_validation_rules Event_1egoehb Activity_02lq9lo Event_12qepud Activity_0cdgqi0 Event_16u0f7b not(isInvoiceSubmitPass) invoice = { "contributorName":contributorName, "contributorId":contributorId, "invoiceId":invoiceId, "invoiceAmount":invoiceAmount, "dueDate":dueDate } Flow_11b24we Flow_02moyg7 DataObjectReference_Invoice Flow_18cic3h Flow_1hskul7 Flow_11b24we Flow_1ck27i7 Flow_1x4rtop Flow_05ffq52 Process milestone should update the process metadata field “milestone reached” Flow_05ffq52 Flow_13ng1f4 Process milestone should update the process metadata field “milestone reached” Flow_1x4rtop Flow_0nhu0ew Flow_1c5u447 Flow_1gohkts Flow_16bw9hx Flow_16bw9hx Flow_138hkfx Flow_1gohkts Flow_0zy4869 Flow_0rqdcfk Flow_1wturr2 Flow_1wturr2 Flow_1m8oeg0 Flow_18xvx8w Flow_0bfs2xe Flow_1ex5hfx Flow_1c5u447 Flow_138hkfx Flow_1m8oeg0 Flow_01cnc1i Flow_1an91fc Flow_1an91fc Flow_0vkr4vr Flow_0vkr4vr Flow_0vd1pxu Flow_0vd1pxu Process milestone should update the process metadata field “milestone reached” Flow_1l1n5j5 Flow_1ex5hfx Flow_1i8r773 Flow_1qq2iv5 Flow_1i8r773 Flow_1094cjp Flow_1qq2iv5 Flow_1dtnpw3 Flow_1094cjp Flow_1dtnpw3 Flow_1n7wssu Flow_1n7wssu Flow_1l1n5j5 Flow_0bfs2xe Flow_0c0c9mw Flow_0c0c9mw Flow_18xvx8w Flow_0zy4869 Flow_01cnc1i Flow_0nhu0ew Flow_02moyg7 Flow_1ck27i7 DataObjectReference_Invoice Property_137rqqj Flow_1avkxpe Flow_0iiotdb Flow_1s4qhn1 from datetime import datetime invoice_date_obj = datetime.strptime(dueDate, '%Y-%m-%d') local_date_time_obj = datetime.strptime(local_date_str, '%Y-%m-%d') if invoice_date_obj > local_date_time_obj: isDueDateAfter = True else: isDueDateAfter = False del local_date_time_obj del invoice_date_obj del datetime Flow_0tzjowk Flow_1avkxpe Flow_18qyq02 isNameNum = False for c in contributorName: if c.isdigit(): isNameNum = True break Flow_18qyq02 Flow_1okg2rg import decimal # Check if there are more than two decimal places invoiceAmount_str = str(invoiceAmount) d = decimal.Decimal(invoiceAmount_str) d_cnt = d.as_tuple().exponent decimal_cnt = abs(d_cnt) del d del decimal submit_involce_valication Flow_1s4qhn1 Flow_0tzjowk Flow_1okg2rg Flow_0iiotdb Flow_0rqdcfk Validation failed. {{ submitInvoiceValidationMessage }} Please fix. Flow_13ng1f4 Flow_18cic3h Flow_1hskul7 Please check your invoice data topica_one topica_one