D-Calc has been enhanced to support retrieval of an existing pole record and all associated modeled damages, then return output parameters back to the 3rd-party application. This new function for retrieving existing pole records is called viewPole while createPole continues to support the ability to create and model a new pole record,
D-Calc can be integrated to other apps using URL parameters within links. The link will have the following general format:
**TO CREATE NEW POLES: **https://dcalc.edmlink.com/createPole?<input parameters>&returnURL=<ouput app><output app parameters>
**TO VIEW EXISTING POLES: **https://dcalc.edmlink.com/viewPole?<input parameters>&returnURL=<ouput app><output app parameters>
Depending on the function used (viewPole or createPole), this will open D-Calc, view existing and/or create a new pole record, pre-populate the pole record with the parameters given, and then construct a returnURL link to send output parameters back to another 3rd-party app. URL encoding is required in parts of the returnURL for most applications, including Esri.
NOTE: the new viewPole function always requires two and only two input parameters: poleID and projectName
Example: (without URL encoding, for readability)
**TO CREATE NEW POLES:**https://dcalc.edmlink.com/createPole?poleId=535505b0-2797-4a94-b334-bc039fbef3d0&DistGL=0&Circumference=32&description=skdjfjf&Species=Lodgepole Pine&Class=3&Length=40&projectName=New_Project&returnUrl=https://survey123.arcgis.com/share/dcc8df93cc2b46b1b0c5a4d08434aeba?portalUrl=https://EDM.maps.arcgis.com&field:rsm1_net_act=${rsm1_net_act}&field:PoleGUID=${poleId}
**TO VIEW EXISTING POLES:**https://dcalc.edmlink.com/viewPole?poleId=535505b0-2797-4a94-b334-bc039fbef3d0&projectName=New_Project&returnUrl=https://survey123.arcgis.com/share/dcc8df93cc2b46b1b0c5a4d08434aeba?portalUrl=https://EDM.maps.arcgis.com&field:rsm1_net_act=${rsm1_net_act}&field:PoleGUID=${poleId}
Example: (with URL encoding, actual link would need this encoding)
**TO CREATE NEW POLES:**https://dcalc.edmlink.com/createPole?poleId=535505b0-2797-4a94-b334-bc039fbef3d0&DistGL=0&Circumference=32&description=skdjfjf&Species=Lodgepole Pine&Class=3&Length=40&projectName=New_Project&returnUrl=https://survey123.arcgis.com/share/dcc8df93cc2b46b1b0c5a4d08434aeba?portalUrl=https://EDM.maps.arcgis.com%26field%3Arsm1_net_act%3D%24%7Brsm1_net_act%7D%26field%3APoleGUID%3D%24%7BpoleId%7D
**TO VIEW EXISTING POLES:**https://dcalc.edmlink.com/viewPole?poleId=535505b0-2797-4a94-b334-bc039fbef3d0&projectName=New_Project&returnUrl=https://survey123.arcgis.com/share/dcc8df93cc2b46b1b0c5a4d08434aeba?portalUrl=https://EDM.maps.arcgis.com%26field%3Arsm1_net_act%3D%24%7Brsm1_net_act%7D%26field%3APoleGUID%3D%24%7BpoleId%7D
Note: the returnURL parameter set is not required. You may simply pass data into D-Calc from a 3rd-party app and not need to pass data back. But the returnURL is needed if you wish to pass data back from D-Calc into a 3rd-party app. The returnURL output parameters are the same for both viewPole and createPole functions.
The returnURL format needs to match the specification of the 3rd party app you are sending the data to. D-Calc's URL methodlogy was built and tested around Esri's URL parameters for their mobile apps, but the method can theoretically be used for any other app that accepts URL-based inputs.
Esri URL parameter specs:
For support and/or services in creating D-Calcintegrations through URLs, contact Paul Petersen