How to get only form variables of Camunda's human task using REST API? - camunda

I have a simple bpmn with only script task that sets a process variable and a human task that accepts two input parameters, one output parameter and has defined one form data field.
After I start the process the execution stops on the human task. I'm then trying to obtain the variables of the human task form (i.e. the input variables and\or the form data field but not the execution variable set by the screen task).
The results of querying REST API are as follows:
task/id/variables - input variables and script task variable
task/id/form-variables - input variables, form data field and script task variable
task/id/localVariables - empty
I can't understand why the script task variable is returned along with other form-variables.
How can I obtain only the input variables and form data field but not the screen task variable (and possibly all other process variables)?
EDIT: I don't want to use query parameters to select variable names.
I'm using the Camunda Widlfly 10.0.0.
The bpmn I'm using:
<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.3.0">
<bpmn:process id="userTaskExample" isExecutable="true">
<bpmn:startEvent id="StartEvent_02mu30n">
<bpmn:outgoing>SequenceFlow_14v3dyf</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:endEvent id="EndEvent_144sl4n">
<bpmn:incoming>SequenceFlow_0acu0wh</bpmn:incoming>
</bpmn:endEvent>
<bpmn:sequenceFlow id="SequenceFlow_0acu0wh" sourceRef="Task_096f7n7" targetRef="EndEvent_144sl4n" />
<bpmn:userTask id="Task_096f7n7" name="user task sk">
<bpmn:extensionElements>
<camunda:formData>
<camunda:formField id="form_1" label="form_1" type="string" defaultValue="form_1_" />
</camunda:formData>
<camunda:inputOutput>
<camunda:inputParameter name="input_1">input_1_val</camunda:inputParameter>
<camunda:inputParameter name="input_2">input_2_val</camunda:inputParameter>
<camunda:outputParameter name="output_1">output_2</camunda:outputParameter>
</camunda:inputOutput>
</bpmn:extensionElements>
<bpmn:incoming>SequenceFlow_0sulfwg</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0acu0wh</bpmn:outgoing>
</bpmn:userTask>
<bpmn:sequenceFlow id="SequenceFlow_14v3dyf" sourceRef="StartEvent_02mu30n" targetRef="Task_0cphzp1" />
<bpmn:sequenceFlow id="SequenceFlow_0sulfwg" sourceRef="Task_0cphzp1" targetRef="Task_096f7n7" />
<bpmn:scriptTask id="Task_0cphzp1" name="script task sk" scriptFormat="groovy" camunda:resultVariable="script_task_variable">
<bpmn:incoming>SequenceFlow_14v3dyf</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0sulfwg</bpmn:outgoing>
<bpmn:script><![CDATA["scipt task variable"]]></bpmn:script>
</bpmn:scriptTask>
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="userTaskExample">
<bpmndi:BPMNShape id="StartEvent_02mu30n_di" bpmnElement="StartEvent_02mu30n">
<dc:Bounds x="151" y="66" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="169" y="102" width="0" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="EndEvent_144sl4n_di" bpmnElement="EndEvent_144sl4n">
<dc:Bounds x="616" y="66" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="634" y="102" width="0" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_0acu0wh_di" bpmnElement="SequenceFlow_0acu0wh">
<di:waypoint xsi:type="dc:Point" x="433" y="84" />
<di:waypoint xsi:type="dc:Point" x="524" y="84" />
<di:waypoint xsi:type="dc:Point" x="524" y="84" />
<di:waypoint xsi:type="dc:Point" x="616" y="84" />
<bpmndi:BPMNLabel>
<dc:Bounds x="539" y="84" width="0" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="UserTask_1lppvq8_di" bpmnElement="Task_096f7n7">
<dc:Bounds x="333" y="44" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_14v3dyf_di" bpmnElement="SequenceFlow_14v3dyf">
<di:waypoint xsi:type="dc:Point" x="169" y="102" />
<di:waypoint xsi:type="dc:Point" x="169" y="133" />
<di:waypoint xsi:type="dc:Point" x="252" y="133" />
<di:waypoint xsi:type="dc:Point" x="192" y="204" />
<di:waypoint xsi:type="dc:Point" x="275" y="204" />
<di:waypoint xsi:type="dc:Point" x="275" y="284" />
<bpmndi:BPMNLabel>
<dc:Bounds x="222" y="153.5" width="0" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="SequenceFlow_0sulfwg_di" bpmnElement="SequenceFlow_0sulfwg">
<di:waypoint xsi:type="dc:Point" x="325" y="331" />
<di:waypoint xsi:type="dc:Point" x="401" y="342" />
<di:waypoint xsi:type="dc:Point" x="383" y="204" />
<di:waypoint xsi:type="dc:Point" x="383" y="124" />
<bpmndi:BPMNLabel>
<dc:Bounds x="392" y="258" width="0" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="ScriptTask_1q3eqsu_di" bpmnElement="Task_0cphzp1">
<dc:Bounds x="225" y="284" width="100" height="80" />
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn:definitions>

Your results suggest you are displaying the variable defined in the script task in the human task form.
I say this because when you look at the source to retrieve the form variables we see:
// first, evaluate form fields
TaskDefinition taskDefinition = task.getTaskDefinition();
if (taskDefinition != null) {
TaskFormData taskFormData = taskDefinition.getTaskFormHandler().createTaskForm(task);
for (FormField formField : taskFormData.getFormFields()) {
if(formVariableNames == null || formVariableNames.contains(formField.getId())) {
result.put(formField.getId(), createVariable(formField, task));
}
}
}
// collect remaining variables from task scope and parent scopes
task.collectVariables(result, formVariableNames, false, deserializeObjectValues);
Notice we ierate over the form field definition to retrieve the variable names we care about, then we populate the data from the execution context.
Ultimately Activiti/Camunda (they are 90% the same at the engine level) does no differentiate between data entered in a form and data created in a script or service task (e.g. as a result variable).
If you need to separate these for some reason, I suggest you use a naming convention and query process variables based on the variable name convention.

Related

Duplicate task instances created for one process instance in Camunda

I have deployed bpmn workflow which is creating duplicate task instances. On my further investigation I noticed the ACT_HI_ACTINST table which records sequence of activities regarding the process instance of workflow. What I found is, in b/w Account Review stage to Manager 1 stage, the exclusiveGateway and parallelGateway records are appeared twice which leads to the creation of duplicate tasks for Manager 1. What went wrong with bpmn deployed attached here? I am using Camunda 7.11.0.
#rob2universe please find the attached xml.
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" id="definitions_aa944ebe-cbcd-4b68-98df-de24c78ae605" targetNamespace="http://www.omg.org/spec/BPMN/20100524/MODEL" exporter="Camunda Modeler" exporterVersion="4.12.0">
<process id="weeklyPayments" name="Weekly Payments" isExecutable="true">
<startEvent id="startEvent_0489fe56-21df-4cc0-85f3-86b8ac15f1b1" name="Weekly payments Start">
<outgoing>sequenceFlow_43dd42e8-47fc-4bb5-8f5d-387db79f3e6c</outgoing>
</startEvent>
<userTask id="payrollAccountantReviewTaskId" name="Account review" camunda:assignee="0afc00a7-1689-4003-b99f-116f7d42da17">
<incoming>sequenceFlow_43dd42e8-47fc-4bb5-8f5d-387db79f3e6c</incoming>
<incoming>sequenceFlow_dfbc5aab-c51a-41d6-9af6-03a237d29e5f</incoming>
<outgoing>sequenceFlow_f091e4f1-d246-4a3f-8cc5-d0811a4651eb</outgoing>
</userTask>
<sequenceFlow id="sequenceFlow_43dd42e8-47fc-4bb5-8f5d-387db79f3e6c" sourceRef="startEvent_0489fe56-21df-4cc0-85f3-86b8ac15f1b1" targetRef="payrollAccountantReviewTaskId" />
<exclusiveGateway id="exclusiveGatewayBeforeApproval">
<incoming>sequenceFlow_f091e4f1-d246-4a3f-8cc5-d0811a4651eb</incoming>
<outgoing>sequenceFlow_c713a794-a008-416a-811c-58be2650afaa</outgoing>
</exclusiveGateway>
<sequenceFlow id="sequenceFlow_f091e4f1-d246-4a3f-8cc5-d0811a4651eb" sourceRef="payrollAccountantReviewTaskId" targetRef="exclusiveGatewayBeforeApproval" />
<parallelGateway id="standardWorkflow_1parallelGateLevel1">
<incoming>sequenceFlow_c713a794-a008-416a-811c-58be2650afaa</incoming>
<outgoing>sequenceFlow_1b2992c2-6bbf-43a5-bd15-9bdd2a91c1de</outgoing>
</parallelGateway>
<sequenceFlow id="sequenceFlow_c713a794-a008-416a-811c-58be2650afaa" sourceRef="exclusiveGatewayBeforeApproval" targetRef="standardWorkflow_1parallelGateLevel1" />
<userTask id="userTask_8cd0a009-7d4c-4857-bcce-b0a358be9c39" name="Manager 1" camunda:assignee="165f2d43-a133-4433-8c24-219ec599a377">
<incoming>sequenceFlow_1b2992c2-6bbf-43a5-bd15-9bdd2a91c1de</incoming>
<outgoing>sequenceFlow_d578879e-ce63-4a37-96ed-ea357c63a2d0</outgoing>
</userTask>
<sequenceFlow id="sequenceFlow_1b2992c2-6bbf-43a5-bd15-9bdd2a91c1de" sourceRef="standardWorkflow_1parallelGateLevel1" targetRef="userTask_8cd0a009-7d4c-4857-bcce-b0a358be9c39" />
<exclusiveGateway id="standardWorkflow_1exclusiveGateApprovalLevel1" gatewayDirection="Diverging">
<incoming>sequenceFlow_d578879e-ce63-4a37-96ed-ea357c63a2d0</incoming>
<outgoing>sequenceFlow_dfbc5aab-c51a-41d6-9af6-03a237d29e5f</outgoing>
<outgoing>Flow_0dhem2c</outgoing>
</exclusiveGateway>
<sequenceFlow id="sequenceFlow_d578879e-ce63-4a37-96ed-ea357c63a2d0" sourceRef="userTask_8cd0a009-7d4c-4857-bcce-b0a358be9c39" targetRef="standardWorkflow_1exclusiveGateApprovalLevel1" />
<sequenceFlow id="sequenceFlow_dfbc5aab-c51a-41d6-9af6-03a237d29e5f" sourceRef="standardWorkflow_1exclusiveGateApprovalLevel1" targetRef="payrollAccountantReviewTaskId">
<conditionExpression id="conditionExpression_a0828e4f-68ba-4c1c-ab91-fe454ccd22cf">#{not approved}</conditionExpression>
</sequenceFlow>
<endEvent id="endEvent_1215456f-e1ed-4be6-bd75-e3eb7dba1a1b" name="Weekly payments Approved">
<incoming>Flow_0dhem2c</incoming>
</endEvent>
<sequenceFlow id="Flow_0dhem2c" sourceRef="standardWorkflow_1exclusiveGateApprovalLevel1" targetRef="endEvent_1215456f-e1ed-4be6-bd75-e3eb7dba1a1b" />
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_9b401e85-e737-4fc3-879a-23f2a5c74904">
<bpmndi:BPMNPlane id="BPMNPlane_3ac9827c-4875-42bb-ac8a-2e42f790c559" bpmnElement="weeklyPayments">
<bpmndi:BPMNEdge id="BPMNEdge_c7c043df-75ce-46f3-99b0-c60fecb44739" bpmnElement="sequenceFlow_dfbc5aab-c51a-41d6-9af6-03a237d29e5f">
<di:waypoint x="831" y="143" />
<di:waypoint x="831" y="270" />
<di:waypoint x="406" y="270" />
<bpmndi:BPMNLabel>
<dc:Bounds x="1343" y="243" width="34" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_96d0e27e-e6d5-4789-8594-3513310041dd" bpmnElement="sequenceFlow_d578879e-ce63-4a37-96ed-ea357c63a2d0">
<di:waypoint x="756" y="118" />
<di:waypoint x="806" y="118" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_38784eaf-da72-4325-b7d2-0cfd683f26c0" bpmnElement="sequenceFlow_1b2992c2-6bbf-43a5-bd15-9bdd2a91c1de">
<di:waypoint x="606" y="118" />
<di:waypoint x="656" y="118" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_404bebd5-39e7-4b0f-b99f-bedaf6e45cfc" bpmnElement="sequenceFlow_c713a794-a008-416a-811c-58be2650afaa">
<di:waypoint x="506" y="118" />
<di:waypoint x="556" y="118" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_13585ad2-8ee9-4257-a654-3208c36ac7eb" bpmnElement="sequenceFlow_f091e4f1-d246-4a3f-8cc5-d0811a4651eb">
<di:waypoint x="356" y="230" />
<di:waypoint x="356" y="118" />
<di:waypoint x="456" y="118" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_39143a53-8255-453b-a745-34fe234aa4e1" bpmnElement="sequenceFlow_43dd42e8-47fc-4bb5-8f5d-387db79f3e6c">
<di:waypoint x="208" y="270" />
<di:waypoint x="306" y="270" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0dhem2c_di" bpmnElement="Flow_0dhem2c">
<di:waypoint x="856" y="118" />
<di:waypoint x="932" y="118" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="BPMNShape_2420f9d5-d6c9-4367-b4eb-5da788186a33" bpmnElement="startEvent_0489fe56-21df-4cc0-85f3-86b8ac15f1b1">
<dc:Bounds x="172" y="252" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="150" y="288" width="88" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_d5ebb429-87d2-4cf4-b98d-c1b1c1f22402" bpmnElement="payrollAccountantReviewTaskId">
<dc:Bounds x="306" y="230" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_877ee2fd-54e0-4c3d-8710-5b50d2e2b696" bpmnElement="exclusiveGatewayBeforeApproval" isMarkerVisible="true">
<dc:Bounds x="456" y="93" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_02a3cde9-8508-4420-9597-ba7cf5977ed9" bpmnElement="standardWorkflow_1parallelGateLevel1">
<dc:Bounds x="556" y="93" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_336a138c-1325-4596-a68c-364bf0951aa0" bpmnElement="userTask_8cd0a009-7d4c-4857-bcce-b0a358be9c39">
<dc:Bounds x="656" y="78" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_11ddb890-d80a-46ec-9c67-beaaf3b5723f" bpmnElement="standardWorkflow_1exclusiveGateApprovalLevel1" isMarkerVisible="true">
<dc:Bounds x="806" y="93" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_bca69cf4-b5e9-40a5-8271-92ff9d0c4ec0" bpmnElement="endEvent_1215456f-e1ed-4be6-bd75-e3eb7dba1a1b">
<dc:Bounds x="932" y="100" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="906" y="156" width="88" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
Try to move the Manager 1 task on the diagram. Do you now see two sequence flows from the parallel gateway to the user task?
(if this is not the root cause, can you include the modle xml in your post?)

Import failure using the Vendor invoice V2 composite data entity (VendInvoiceV2Entity) in Dynamics 365 (D365) for Finance & Operations

I am trying to import vendor invoice using the composite data entity "Vendor invoice V2" data entity (VendInvoiceV2Entity), but I am getting the following error:
Package execution failed please check event log in DMF service box
'0' 'Vendor invoice V2' record(s) inserted in staging
I am using the following file for import:
<?xml version="1.0" encoding="utf-8"?>
<Document>
<VENDORINVOICEHEADERENTITY>
<HEADERREFERENCE>VT01-002123</HEADERREFERENCE>
<APPROVEPOSTINGWITHMATCHINGDISCREPANCIES>0</APPROVEPOSTINGWITHMATCHINGDISCREPANCIES>
<APPROVERPERSONNELNUMBER>000001</APPROVERPERSONNELNUMBER>
<BANKACCOUNT />
<BUSINESSDOCUMENTSUBMISSIONID_W>00000000-0000-0000-0000-000000000000</BUSINESSDOCUMENTSUBMISSIONID_W>
<CASHDISCOUNT>0.000000</CASHDISCOUNT>
<CASHDISCOUNTCODE />
<CASHDISCOUNTDATE>1900-01-01T00:00:00+00:00</CASHDISCOUNTDATE>
<CHARGESGROUP />
<COMMENT_ />
<CURRENCY>USD</CURRENCY>
<DATE>2022-06-02T00:00:00+00:00</DATE>
<DELIVERYNAME>New address created from PO</DELIVERYNAME>
<DIMENSIONDISPLAYVALUE />
<DISCOUNTPERCENTAGE>0.000000</DISCOUNTPERCENTAGE>
<DOCUMENTNUMBER />
<DUEDATE>2022-07-02T00:00:00+00:00</DUEDATE>
<ENDDATETIME>1900-01-01T00:00:00+00:00</ENDDATETIME>
<EXCHANGERATE>100.0000000000000000</EXCHANGERATE>
<FIXEDRATE>0</FIXEDRATE>
<HEADERONLYIMPORT>0</HEADERONLYIMPORT>
<IGNORECALCULATEDSALESTAX>0</IGNORECALCULATEDSALESTAX>
<IMPORTEDAMOUNT>0.000000</IMPORTEDAMOUNT>
<IMPORTEDSALESTAX>0.000000</IMPORTEDSALESTAX>
<INVOICEACCOUNT>000509</INVOICEACCOUNT>
<INVOICEDATE>1900-01-01T00:00:00+00:00</INVOICEDATE>
<INVOICEDESCRIPTION />
<INVOICEGROUP />
<INVOICENUMBER />
<INVOICEPAYMENTRELEASEDATE>1900-01-01T00:00:00+00:00</INVOICEPAYMENTRELEASEDATE>
<INVOICERECEIVEDDATE>2022-06-02T00:00:00+00:00</INVOICERECEIVEDDATE>
<INVOICEROUNDOFF>0.000000</INVOICEROUNDOFF>
<ISAPPROVED>1</ISAPPROVED>
<ISBATCH>1</ISBATCH>
<ISONHOLD>0</ISONHOLD>
<ISPRICESINCLUDESALESTAX>0</ISPRICESINCLUDESALESTAX>
<LOG />
<METHODOFPAYMENT />
<NUMBERSEQUENCEGROUP />
<OVERRIDESALESTAX>0</OVERRIDESALESTAX>
<PACKINGSLIPRANGE />
<PAYMENTGROUPCODE />
<PAYMENTID />
<PAYMENTSCHEDULE />
<PAYMENTSPECIFICATION />
<PORT />
<POSTINGPROFILE />
<PSNBANKACCOUNTID />
<PSNCARDHOLDERNAME />
<PSNCARDNUMBERDIGITS />
<PSNPOSTINGDEFINITIONCODE />
<PSNPURCHASINGCARDTRANSACTIONTYPE>0</PSNPURCHASINGCARDTRANSACTIONTYPE>
<PSNREFERENCEINVOICENUMBER />
<PSNVENDORACCOUNTFORBALANCEPAYOFF />
<PURCHIDRANGE />
<RECALCULATION>1</RECALCULATION>
<RELEASEDATECOMMENT />
<REPORTINGCURRENCYEXCHANGERATE>100.0000000000000000</REPORTINGCURRENCYEXCHANGERATE>
<SALESTAXGROUP />
<SALESTAXROUNDING>0.000000</SALESTAXROUNDING>
<SECONDARYEXCHANGERATE>0.0000000000000000</SECONDARYEXCHANGERATE>
<SETTLEVOUCHER>0</SETTLEVOUCHER>
<SITE />
<STARTDATETIME>1900-01-01T00:00:00+00:00</STARTDATETIME>
<STATISTICSPROCEDURE />
<TAXEXEMPTNUMBER />
<TERMSOFPAYMENT />
<TOTALDISCOUNT>0.000000</TOTALDISCOUNT>
<TRANSACTIONCODE />
<TRANSPORT />
<TRIANGULATION>0</TRIANGULATION>
<VARIANCEAPPROVEDDATETIME>1900-01-01T00:00:00+00:00</VARIANCEAPPROVEDDATETIME>
<VARIANCEPERSONNELNUMBER>000001</VARIANCEPERSONNELNUMBER>
<VENDORACCOUNT>000509</VENDORACCOUNT>
<VENDORINVOICEREVIEWSTATUS>0</VENDORINVOICEREVIEWSTATUS>
<VENDORINVOICETYPE>0</VENDORINVOICETYPE>
<VENDORNAME>MY XYZ VENDOR</VENDORNAME>
<VENDORREQUESTEDWORKEREMAIL>shakir.shabbir52#gmail.com</VENDORREQUESTEDWORKEREMAIL>
<WAREHOUSE />
<VENDORINVOICELINEENTITY>
<HEADERREFERENCE>VT01-002123</HEADERREFERENCE>
<INVOICELINENUMBER>1.0000000000000000</INVOICELINENUMBER>
<ACCOUNTINGDISTRIBUTIONTEMPLATEID />
<AMOUNT>0.000000</AMOUNT>
<BUDGETRESERVATIONDOCUMENTNUMBER />
<BUDGETRESERVATIONLINENUMBER>0</BUDGETRESERVATIONLINENUMBER>
<CHANGEQUANTITYMANUALLY>0</CHANGEQUANTITYMANUALLY>
<CHARGESONPURCHASES>0.000000</CHARGESONPURCHASES>
<CLOSEFORRECEIPT>0</CLOSEFORRECEIPT>
<COMMODITY />
<CURRENCY>USD</CURRENCY>
<CWDELIVERYREMAINDER>0.000000</CWDELIVERYREMAINDER>
<CWREMAININGQUANTITY>0.000000</CWREMAININGQUANTITY>
<CWUPDATE>0.000000</CWUPDATE>
<DATAAREACOMPANY />
<DELIVERYNAME>New address created from PO</DELIVERYNAME>
<DELIVERYSTATE />
<DIMENSIONDISPLAYVALUE />
<DIMENSIONNUMBER>#00000001500031DB</DIMENSIONNUMBER>
<DISCOUNT>0.000000</DISCOUNT>
<DISCOUNTPERCENT>0.000000</DISCOUNTPERCENT>
<INVENTNOW>3000.000000</INVENTNOW>
<INVENTORYSITEID>1001</INVENTORYSITEID>
<INVENTORYWAREHOUSEID>1001.255</INVENTORYWAREHOUSEID>
<INVOICEACCOUNT>000509</INVOICEACCOUNT>
<ISTAX1099GTRADEORBUSINESSINCOME>0</ISTAX1099GTRADEORBUSINESSINCOME>
<ISTAX1099SPROPERTYORSERVICES>0</ISTAX1099SPROPERTYORSERVICES>
<ITEMBATCHNUMBER />
<ITEMNAME>My Item name</ITEMNAME>
<ITEMNUMBER>100018</ITEMNUMBER>
<ITEMSALESTAX />
<LINEDESCRIPTION />
<LINENUMBER>1.0000000000000000</LINENUMBER>
<LINETYPE>0</LINETYPE>
<MAINACCOUNTDISPLAYVALUE />
<MULTILINEDISCOUNT>0.000000</MULTILINEDISCOUNT>
<MULTILINEDISCOUNTPERCENTAGE>0.000000</MULTILINEDISCOUNTPERCENTAGE>
<NETAMOUNT>65.610000</NETAMOUNT>
<ORDEREDINVENTORYSTATUSID />
<ORIGCOUNTRYREGIONID />
<ORIGINALDELIVERREMAINDER>3000.000000</ORIGINALDELIVERREMAINDER>
<OVERRIDESALESTAX>0</OVERRIDESALESTAX>
<PARTYID />
<PERCENTAGE>0.000000</PERCENTAGE>
<PORT />
<PRICEUNIT>1.000000000000</PRICEUNIT>
<PROCUREMENTCATEGORYHIERARCHYNAME>Main</PROCUREMENTCATEGORYHIERARCHYNAME>
<PROCUREMENTCATEGORYNAME>Lab Supplies</PROCUREMENTCATEGORYNAME>
<PRODUCTCOLORID />
<PRODUCTCONFIGURATIONID />
<PRODUCTSIZEID />
<PRODUCTSTYLEID />
<PURCHASEORDER>VT01-000741</PURCHASEORDER>
<PURCHLINENUMBER>1</PURCHLINENUMBER>
<RECEIVENOW>3.000000</RECEIVENOW>
<RELEASEALLRETAINEDAMOUNT>0</RELEASEALLRETAINEDAMOUNT>
<REMAINAFTER>0.000000</REMAINAFTER>
<REMAINAFTERINVENT>0.000000</REMAINAFTERINVENT>
<REMAINBEFOREINVENT>3000.000000</REMAINBEFOREINVENT>
<RETAINAGEAMOUNT>0.000000</RETAINAGEAMOUNT>
<RETAINPERCENTAGE>0.000000</RETAINPERCENTAGE>
<SALESTAXGROUP />
<STATEOFORIGIN />
<STATISTICSPROCEDURE />
<TAX1099AMOUNT>0.000000</TAX1099AMOUNT>
<TAX1099BOX />
<TAX1099GSTATETAXWITHHELDAMOUNT>0.000000</TAX1099GSTATETAXWITHHELDAMOUNT>
<TAX1099GTAXYEAR>0</TAX1099GTAXYEAR>
<TAX1099GVENDORSTATEID />
<TAX1099GVENDORSTATETAXID />
<TAX1099SADDRESSORLEGALDESCRIPTION />
<TAX1099SBUYERPARTOFREALESTATETAXAMOUNT>0.000000</TAX1099SBUYERPARTOFREALESTATETAXAMOUNT>
<TAX1099STATEAMOUNT>0.000000</TAX1099STATEAMOUNT>
<TAX1099TYPE>0</TAX1099TYPE>
<TAXWITHHOLDGROUP />
<TAXWITHHOLDITEMGROUPNAME />
<TRANSACTIONCODE />
<TRANSPORT />
<UNIT />
<UNITPRICE>21.870000</UNITPRICE>
<VENDORACCOUNT>000509</VENDORACCOUNT>
<VENDORINVOICELINEREVIEWSTATUS>0</VENDORINVOICELINEREVIEWSTATUS>
<WITHHOLDINGTAXGROUP />
</VENDORINVOICELINEENTITY>
</VENDORINVOICEHEADERENTITY>
</Document>
I checked the "Event log" as well, but did not get any useful information
TLDR;
The issue of the question is probably caused by a data issue and not by a bug in the import/export framework logic. Without having access to an environment with that data, there is probably little that can be provided in terms of an answer to the specific issue of the question. But here are some general pointers on how to further analyze the issue.
Creating a working baseline
In general, when setting up an import for a complex entity like Vendor Invoice V2, I recommend the following process:
First, manually create a few data samples in the system (in this case, a pending vendor invoice). The samples should be entered with the same data that you expect from the import.
Second, create an export project and export the data samples. This will give you a template file that you can use for the import.
Third, create the import project with the template file.
Check that the import works with the template file. You should delete the sample data first to make sure the import creates new records instead of updating them.
Modify a copy of the template file to include additional import data. Import that modified copy.
Steps 1-4 are important to establish a working base line. The bulk of the work will probably be step 5. Usually, at this step, numerous issues with the import data are uncovered.
Working Contoso sample and additional ideas
Following this process, I was able to set up a working import on a 10.0.28 environment with Contoso demo data in the USMF legal entity. See below for the xml data that I used.
While testing this and when comparing my xml data with the one from the question, I noticed the following issues that may be worth investigating:
During setup of the import project, the mapping was first shown with a red x symbol. This was due to the unmapped field COMMENT_, which only seems to be supported for export, but not import. I removed it from the mapping and the red x was gone.
The xml data in the question has a field PURCHASEORDER in the line data, but the field is missing in the header data.
A couple of fields in my xml data have values, while the xml data of the question does not, and vice versa. Nothing obvious was jumping out at me for causing issues. But I recommend reviewing the import data carefully for any issues.
Working sample data:
<?xml version="1.0" encoding="utf-8"?>
<Document>
<VENDORINVOICEHEADERENTITY>
<HEADERREFERENCE>012222</HEADERREFERENCE>
<APPROVEPOSTINGWITHMATCHINGDISCREPANCIES>0</APPROVEPOSTINGWITHMATCHINGDISCREPANCIES>
<APPROVERPERSONNELNUMBER>000020</APPROVERPERSONNELNUMBER>
<BANKACCOUNT />
<BUSINESSDOCUMENTSUBMISSIONID_W>00000000-0000-0000-0000-000000000000</BUSINESSDOCUMENTSUBMISSIONID_W>
<CASHDISCOUNT>0.000000</CASHDISCOUNT>
<CASHDISCOUNTCODE>0.5%D10</CASHDISCOUNTCODE>
<CASHDISCOUNTDATE>1900-01-01T00:00:00+01:00</CASHDISCOUNTDATE>
<CHARGESGROUP />
<COMMENT_ />
<CURRENCY>USD</CURRENCY>
<DATE>2022-06-15T00:00:00+02:00</DATE>
<DELIVERYNAME>Contoso Entertainment System USA</DELIVERYNAME>
<DIMENSIONDISPLAYVALUE>001--</DIMENSIONDISPLAYVALUE>
<DISCOUNTPERCENTAGE>0.500000</DISCOUNTPERCENTAGE>
<DOCUMENTNUMBER />
<DUEDATE>2022-07-15T00:00:00+02:00</DUEDATE>
<ENDDATETIME>1900-01-01T00:00:00+01:00</ENDDATETIME>
<EXCHANGERATE>100.0000000000000000</EXCHANGERATE>
<FIXEDRATE>0</FIXEDRATE>
<HEADERONLYIMPORT>0</HEADERONLYIMPORT>
<IGNORECALCULATEDSALESTAX>0</IGNORECALCULATEDSALESTAX>
<IMPORTEDAMOUNT>0.000000</IMPORTEDAMOUNT>
<IMPORTEDSALESTAX>0.000000</IMPORTEDSALESTAX>
<INVOICEACCOUNT>1001</INVOICEACCOUNT>
<INVOICEDATE>1900-01-01T00:00:00+01:00</INVOICEDATE>
<INVOICEDESCRIPTION />
<INVOICEGROUP />
<INVOICENUMBER>4711</INVOICENUMBER>
<INVOICEPAYMENTRELEASEDATE>1900-01-01T00:00:00+01:00</INVOICEPAYMENTRELEASEDATE>
<INVOICERECEIVEDDATE>1900-01-01T00:00:00+01:00</INVOICERECEIVEDDATE>
<INVOICEROUNDOFF>0.000000</INVOICEROUNDOFF>
<ISAPPROVED>1</ISAPPROVED>
<ISBATCH>0</ISBATCH>
<ISONHOLD>0</ISONHOLD>
<ISPRICESINCLUDESALESTAX>0</ISPRICESINCLUDESALESTAX>
<LOG />
<METHODOFPAYMENT>CHECK</METHODOFPAYMENT>
<NUMBERSEQUENCEGROUP />
<OVERRIDESALESTAX>0</OVERRIDESALESTAX>
<PACKINGSLIPRANGE />
<PAYMENTGROUPCODE />
<PAYMENTID />
<PAYMENTSCHEDULE />
<PAYMENTSPECIFICATION />
<PORT />
<POSTINGPROFILE>GEN</POSTINGPROFILE>
<PSNBANKACCOUNTID />
<PSNCARDHOLDERNAME />
<PSNCARDNUMBERDIGITS />
<PSNPOSTINGDEFINITIONCODE />
<PSNPURCHASINGCARDTRANSACTIONTYPE>0</PSNPURCHASINGCARDTRANSACTIONTYPE>
<PSNREFERENCEINVOICENUMBER />
<PSNVENDORACCOUNTFORBALANCEPAYOFF />
<PURCHASEORDERNUMBER />
<PURCHIDRANGE />
<RECALCULATION>1</RECALCULATION>
<RELEASEDATECOMMENT />
<REPORTINGCURRENCYEXCHANGERATE>100.0000000000000000</REPORTINGCURRENCYEXCHANGERATE>
<SALESTAXGROUP />
<SALESTAXROUNDING>0.000000</SALESTAXROUNDING>
<SECONDARYEXCHANGERATE>0.0000000000000000</SECONDARYEXCHANGERATE>
<SETTLEVOUCHER>0</SETTLEVOUCHER>
<SITE />
<STARTDATETIME>1900-01-01T00:00:00+01:00</STARTDATETIME>
<STATISTICSPROCEDURE />
<TAXEXEMPTNUMBER />
<TERMSOFPAYMENT>Net30</TERMSOFPAYMENT>
<TOTALDISCOUNT>0.000000</TOTALDISCOUNT>
<TRANSACTIONCODE />
<TRANSPORT />
<TRIANGULATION>0</TRIANGULATION>
<VARIANCEAPPROVEDDATETIME>1900-01-01T00:00:00+01:00</VARIANCEAPPROVEDDATETIME>
<VARIANCEPERSONNELNUMBER>000020</VARIANCEPERSONNELNUMBER>
<VENDORACCOUNT>1001</VENDORACCOUNT>
<VENDORINVOICEREVIEWSTATUS>0</VENDORINVOICEREVIEWSTATUS>
<VENDORINVOICETYPE>0</VENDORINVOICETYPE>
<VENDORNAME>Acme Office Supplies</VENDORNAME>
<VENDORREQUESTEDWORKEREMAIL>julia#contoso.com</VENDORREQUESTEDWORKEREMAIL>
<WAREHOUSE />
<VENDORINVOICELINEENTITY>
<HEADERREFERENCE>012222</HEADERREFERENCE>
<INVOICELINENUMBER>1.0000000000000000</INVOICELINENUMBER>
<ACCOUNTINGDISTRIBUTIONTEMPLATEID />
<ADJUSTEDUNITPRICE>0.000000</ADJUSTEDUNITPRICE>
<AMOUNT>0.000000</AMOUNT>
<BUDGETRESERVATIONDOCUMENTNUMBER />
<BUDGETRESERVATIONLINENUMBER>0</BUDGETRESERVATIONLINENUMBER>
<CHANGEQUANTITYMANUALLY>0</CHANGEQUANTITYMANUALLY>
<CHARGESONPURCHASES>0.000000</CHARGESONPURCHASES>
<CLOSEFORRECEIPT>0</CLOSEFORRECEIPT>
<COMMODITY />
<CURRENCY>USD</CURRENCY>
<CWDELIVERYREMAINDER>0.000000</CWDELIVERYREMAINDER>
<CWREMAININGQUANTITY>0.000000</CWREMAININGQUANTITY>
<CWUPDATE>0.000000</CWUPDATE>
<DATAAREACOMPANY />
<DELIVERYNAME>Site 1</DELIVERYNAME>
<DELIVERYSTATE />
<DIMENSIONDISPLAYVALUE>001--</DIMENSIONDISPLAYVALUE>
<DIMENSIONNUMBER>000252</DIMENSIONNUMBER>
<DISCOUNT>0.000000</DISCOUNT>
<DISCOUNTPERCENT>0.000000</DISCOUNTPERCENT>
<INVENTNOW>0.000000</INVENTNOW>
<INVENTORYSITEID>1</INVENTORYSITEID>
<INVENTORYWAREHOUSEID>13</INVENTORYWAREHOUSEID>
<INVOICEACCOUNT>1001</INVOICEACCOUNT>
<ISTAX1099GTRADEORBUSINESSINCOME>0</ISTAX1099GTRADEORBUSINESSINCOME>
<ISTAX1099SPROPERTYORSERVICES>0</ISTAX1099SPROPERTYORSERVICES>
<ITEMBATCHNUMBER />
<ITEMNAME>Microsoft Natural Keyboard Elite / Microsoft Natural Keyboard Elite</ITEMNAME>
<ITEMNUMBER>C0001</ITEMNUMBER>
<ITEMSALESTAX>ALL</ITEMSALESTAX>
<LINEDESCRIPTION>Microsoft Natural Keyboard Elite</LINEDESCRIPTION>
<LINENUMBER>0.0000000000000000</LINENUMBER>
<LINETYPE>0</LINETYPE>
<MAINACCOUNTDISPLAYVALUE />
<MULTILINEDISCOUNT>0.000000</MULTILINEDISCOUNT>
<MULTILINEDISCOUNTPERCENTAGE>0.000000</MULTILINEDISCOUNTPERCENTAGE>
<NETAMOUNT>39.950000</NETAMOUNT>
<ORDEREDINVENTORYSTATUSID />
<ORIGCOUNTRYREGIONID />
<ORIGINALDELIVERREMAINDER>0.000000</ORIGINALDELIVERREMAINDER>
<OVERRIDESALESTAX>0</OVERRIDESALESTAX>
<PARTYID />
<PDSCALCULATIONID />
<PERCENTAGE>0.000000</PERCENTAGE>
<PORT />
<PRICEUNIT>1.000000000000</PRICEUNIT>
<PROCUREMENTCATEGORYHIERARCHYNAME>Procurement - Office Supplies</PROCUREMENTCATEGORYHIERARCHYNAME>
<PROCUREMENTCATEGORYNAME>Computers</PROCUREMENTCATEGORYNAME>
<PRODUCTCOLORID>Black</PRODUCTCOLORID>
<PRODUCTCONFIGURATIONID />
<PRODUCTSIZEID />
<PRODUCTSTYLEID />
<PURCHASEORDER />
<PURCHLINENUMBER>0</PURCHLINENUMBER>
<RECEIVENOW>1.000000</RECEIVENOW>
<RELEASEALLRETAINEDAMOUNT>0</RELEASEALLRETAINEDAMOUNT>
<REMAINAFTER>0.000000</REMAINAFTER>
<REMAINAFTERINVENT>0.000000</REMAINAFTERINVENT>
<REMAINBEFORE>0.000000</REMAINBEFORE>
<REMAINBEFOREINVENT>0.000000</REMAINBEFOREINVENT>
<RETAINAGEAMOUNT>0.000000</RETAINAGEAMOUNT>
<RETAINPERCENTAGE>0.000000</RETAINPERCENTAGE>
<SALESTAXGROUP />
<STATEOFORIGIN />
<STATISTICSPROCEDURE />
<TAX1099AMOUNT>0.000000</TAX1099AMOUNT>
<TAX1099BOX />
<TAX1099GSTATETAXWITHHELDAMOUNT>0.000000</TAX1099GSTATETAXWITHHELDAMOUNT>
<TAX1099GTAXYEAR>0</TAX1099GTAXYEAR>
<TAX1099GVENDORSTATEID />
<TAX1099GVENDORSTATETAXID />
<TAX1099SADDRESSORLEGALDESCRIPTION />
<TAX1099SBUYERPARTOFREALESTATETAXAMOUNT>0.000000</TAX1099SBUYERPARTOFREALESTATETAXAMOUNT>
<TAX1099STATEAMOUNT>0.000000</TAX1099STATEAMOUNT>
<TAX1099TYPE>0</TAX1099TYPE>
<TAXWITHHOLDGROUP />
<TAXWITHHOLDITEMGROUPNAME />
<TOTALRETAINEDAMOUNT>0.000000</TOTALRETAINEDAMOUNT>
<TRANSACTIONCODE />
<TRANSPORT />
<UNIT>ea</UNIT>
<UNITPRICE>39.950000</UNITPRICE>
<VENDORACCOUNT>1001</VENDORACCOUNT>
<VENDORINVOICELINEREVIEWSTATUS>0</VENDORINVOICELINEREVIEWSTATUS>
<WITHHOLDINGTAXGROUP />
</VENDORINVOICELINEENTITY>
</VENDORINVOICEHEADERENTITY>
</Document>

How to define Decison table in DMN

How to define a Decision table in DMN designer such that,
This is one of the standard decisions : If claim amount is >10000 then hradmin approval =Y otherwise hradmin approval=N
In DMN,
a Decision table in DMN designer such that [...] If claim amount is >10000 then hradmin approval =Y otherwise hradmin approval=N
can be modeled as the following DRG for 1 InputData named claim amount and 1 Decision for the table named hradmin approval:
The hradmin approval decision table can be defined as follows:
The screenshot also shows sample data, matching your original requirements.
You can download the .dmn example here: https://kiegroup.github.io/kogito-online/?file=https://gist.githubusercontent.com/tarilabs/f9655e2f8a2c4253e66ce661e5c79879/raw/so69764028.dmn#/editor/dmn
You can save the xml to a text file, upload it, try it out and modify it here: https://consulting.camunda.com/dmn-simulator/
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="https://www.omg.org/spec/DMN/20191111/MODEL/" xmlns:dmndi="https://www.omg.org/spec/DMN/20191111/DMNDI/" xmlns:dc="http://www.omg.org/spec/DMN/20180521/DC/" xmlns:di="http://www.omg.org/spec/DMN/20180521/DI/" xmlns:camunda="http://camunda.org/schema/1.0/dmn" id="dinnerDecisions" name="HR Approval Decision" namespace="http://camunda.org/schema/1.0/dmn" exporter="Camunda Modeler" exporterVersion="4.0.0">
<decision id="beverages" name="HR Approval">
<informationRequirement id="InformationRequirement_1xvojck">
<requiredInput href="#InputData_0pgvdj9" />
</informationRequirement>
<decisionTable id="DecisionTable_07q05jb">
<input id="InputClause_0bo3uen" label="Amount" camunda:inputVariable="">
<inputExpression id="LiteralExpression_0d6l79o" typeRef="integer">
<text>amount</text>
</inputExpression>
</input>
<output id="OuputClause_99999" label="HR Approval" name="hrApproval" typeRef="boolean" />
<rule id="row-506282952-7">
<description></description>
<inputEntry id="UnaryTests_0jb8hau">
<text>>10000</text>
</inputEntry>
<outputEntry id="LiteralExpression_1kr45vj">
<text>true</text>
</outputEntry>
</rule>
<rule id="DecisionRule_05oqdbw">
<description></description>
<inputEntry id="UnaryTests_1vcdz6c">
<text><=10000</text>
</inputEntry>
<outputEntry id="LiteralExpression_0g5cscd">
<text>false</text>
</outputEntry>
</rule>
</decisionTable>
</decision>
<inputData id="InputData_0pgvdj9" name="Amount" />
<dmndi:DMNDI>
<dmndi:DMNDiagram id="DMNDiagram_0i21c0s">
<dmndi:DMNShape id="DMNShape_0a1lk6d" dmnElementRef="beverages">
<dc:Bounds height="80" width="180" x="430" y="130" />
</dmndi:DMNShape>
<dmndi:DMNEdge id="DMNEdge_1czaglz" dmnElementRef="InformationRequirement_1xvojck">
<di:waypoint x="500" y="287" />
<di:waypoint x="520" y="230" />
<di:waypoint x="520" y="210" />
</dmndi:DMNEdge>
<dmndi:DMNShape id="DMNShape_0aea4xy" dmnElementRef="InputData_0pgvdj9">
<dc:Bounds height="45" width="125" x="437" y="287" />
</dmndi:DMNShape>
</dmndi:DMNDiagram>
</dmndi:DMNDI>
</definitions>

How to call a RESTFul web service with a parameter that has a "dot" inside

I developed a RESTFul service but I am having problems when I want to pass a parameter that has a dot in it. I tried encoding the URL, replacing the dot by %2E, but the end point is not found. When I remove the dot, the end point is found, so it is obvious that something is wrong with the dot.
for example, this request works:
http://localhost:9999/SvcLipigas.svc/AlmacenaPedido/229188562/16122016/2030/123456/CILINDRO%2015%20KGCODIGAS/2/14000/15/19122016/1514/19122016/1000
But this other one does not:
http://localhost:9999/SvcLipigas.svc/AlmacenaPedido/229188562/16122016/2030/123456/CILINDRO%2015%20KG%2ECODIGAS/2/14000/15/19122016/1514/19122016/1000
Notice the dot in the "CILINDRO%2015%20KG%2ECODIGAS" parameter.
Any help will be appreciated.
Currently, as a patch, I am sending the dot replaced by a pipe character, and in the service, I am replacing it back to the dot, but this is a very ugly solution.
EDIT:
[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "AlmacenaPedido/{telefono}/{fechaPedido}/{horaPedido}/{codigoInterno}/{descripcionProducto}/{cantidadProducto}/{valorUnitario}/{kilosProducto}/{fechaEntrega}/{horaEntrega}/{fechaDespacho}/{horaDespacho}")]
int AlmacenaPedido(string telefono, string fechaPedido, string horaPedido, string codigoInterno, string descripcionProducto,
string cantidadProducto, string valorUnitario, string kilosProducto, string fechaEntrega, string horaEntrega,
string fechaDespacho, string horaDespacho);
EDIT: This is the full web.config file
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="WS_PedidoCliente.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" relaxedUrlToFileSystemMapping="true" />
</system.web>
<system.serviceModel>
<services>
<service name="WS_PedidoCliente.SvcLipigas" behaviorConfiguration="serviceBehavior">
<endpoint address=""
binding="webHttpBinding"
contract="WS_PedidoCliente.ISvcLipigas"
bindingNamespace="http://ws.lipigas.cl"
behaviorConfiguration="web"></endpoint>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="serviceBehavior">
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="true" />
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="web">
<webHttp />
</behavior>
</endpointBehaviors>
</behaviors>
<protocolMapping>
<add scheme="http" binding="webHttpBinding"/>
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
<!--
To browse web app root directory during debugging, set the value below to true.
Set to false before deployment to avoid disclosing web app folder information.
-->
<directoryBrowse enabled="true" />
</system.webServer>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v12.0" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
<connectionStrings>
<add name="LipigasEntities" connectionString="metadata=res://*/Model.Lipigas.csdl|res://*/Model.Lipigas.ssdl|res://*/Model.Lipigas.msl;provider=Oracle.DataAccess.Client;provider connection string="DATA SOURCE=SLLCOSTO;PASSWORD=uni_1915sll;USER ID=PEDIDO"" providerName="System.Data.EntityClient" />
</connectionStrings>
<applicationSettings>
<WS_PedidoCliente.Properties.Settings>
<setting name="Usuario" serializeAs="String">
<value>EMDITEC</value>
</setting>
</WS_PedidoCliente.Properties.Settings>
</applicationSettings>
</configuration>
This is a limitation of IIS.
It is treating the dot (encoded or not) as an extension.
Try adding
<httpRuntime relaxedUrlToFileSystemMapping="true" />
to the web.config

WCF service on IIS - WSDL is empty

I created a WCF service and hosted it on my IIS server. Then, I needed to edit the schemaLocation. I followed this post.
When I add "?wsdl" to the url, I get an empty page. If I try to use the WSDL from SOAPui to test it, I get this "Error loading [http://xx.xxx.xx.xx:8095/CardServiceLib.CardService.svc/service?wsdl]: org.apache.xmlbeans.XmlException: org.apache.xmlbeans.XmlException: error: Unexpected end of file after nul"
If I delete the HTTPGetUrl, the WSDL is correct but the schemaLocation isn't what I want. With the mod I made with the linked post, the schemaLocation is perfect but the WSDL is empty... why?
This works, but not as I want (generates WSDL but with wrong links):
<serviceMetadata httpGetEnabled="True" httpsGetEnabled="True" />
and this not (doesn't generate WSDL --> blank page!!!):
<serviceMetadata httpGetEnabled="True" httpsGetEnabled="True" httpGetUrl="http://xx.xx.xx.xx.:8095/MyService.svc/endpoint"/>
This is my web.config on IIS server 7
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="connectionString" connectionString="server=xxxxx;database=xxxxx;uid=xxxxx;pwd=xxxxx;" providerName="System.Data.SqlClient" />
</connectionStrings>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
<add key="userName" value="admin" />
<add key="password" value="xxxxx" />
<add key="ClientSettingsProvider.ServiceUri" value="" />
<add key="SecurityKey" value="xxxxxxxxxx" />
</appSettings>
<system.web>
<compilation debug="true" />
<membership defaultProvider="ClientAuthenticationMembershipProvider">
<providers>
<add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
</providers>
</membership>
<!--<roleManager defaultProvider="ClientRoleProvider" enabled="true">
<providers>
<add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
</providers>
</roleManager>-->
</system.web>
<system.serviceModel>
<standardEndpoints>
<webHttpEndpoint>
<!-- the "" standard endpoint is used for auto creating a web endpoint. -->
<standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true" />
</webHttpEndpoint>
</standardEndpoints>
<bindings>
<basicHttpBinding>
<binding name="SecurityByTransport" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Text">
<readerQuotas maxDepth="2000000" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Basic" />
<!--<message clientCredentialType="UserName"/>-->
</security>
</binding>
</basicHttpBinding>
</bindings>
<services>
<service name="CardServiceLib.CardService" behaviorConfiguration="customBehavior">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="SecurityByTransport" name="base" contract="CardServiceLib.ICardService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" name="mex" contract="IMetadataExchange" />
<!--<endpoint address="web" behaviorConfiguration="webHttp" binding="webHttpBinding"
bindingConfiguration="" name="web" contract="calc.ICalcService">
<identity>
<dns value="localhost" />httpGetUrl="http://77.108.40.77:8095/CardServiceLib.CardService.svc/service"
</identity>
</endpoint>-->
<host>
<baseAddresses>
<add baseAddress="https://xx.xx.xx.xx:8095/MyService/" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="webHttp">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True" httpsGetEnabled="True" />
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
<behavior name="customBehavior">
<serviceMetadata httpGetEnabled="True" httpsGetEnabled="True" httpGetUrl="http://xx.xx.xx.xx:8095/MyService.Service.svc/service"/>
<serviceDebug includeExceptionDetailInFaults="True" />
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="xx,xx" />
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<!--<protocolMapping>
<add binding="webHttpBinding" scheme="http" />
</protocolMapping>-->
</system.serviceModel>
<system.webServer>
<directoryBrowse enabled="false" />
</system.webServer>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> </startup></configuration>
SOLVED!! I added this
address="http://192.168.1.2/Demo.Service/MultiEndPointsService.svc/basic"
in my endpoint tag, like written in this link.
I suspect the issue is related to the authentication required to access the WSDL.
When attempting to access the metadata URL directly, the web site indicates the following:
“Authentication Required”
“The server http://...:8095 requires a username and password.”
You either need to provide the proper credentials or relax the permissions on the WSDL.