a resource for builders of the web
  • Usability improvement: Links now underlined on mouseover February 12, 2024
    Links on PubMed are now underlined on mouseover. This update is based on recommendations from the U.S. Web Design System (USWDS)​.
  • PubMed 2024 Baseline Released and DTD updated December 20, 2023
    The National Library of Medicine (NLM) has released the 2024 production year PubMed Baseline files and the first set of 2024 PubMed Update files have been posted. Regular daily updates have resumed.The updated 2024 PubMed DTD is available here​.
  • GR Field Renamed From "Grant Number" to "Grants and Funding" September 21, 2023
    ​The GR field in PubMed has been renamed from "Grant Number" to "Grants and Funding" and a new section about grants and funding has been added to the PubMed User Guide. These updates to the field name and supporting documentation are being made to increase the overall transparency of funding information in PubMed. These updates […]
  • Proximity Searching Now Available for Affiliation Search Field August 16, 2023
    ​Proximity searching is now available in PubMed for the Affiliation field in addition to the Title and Title/Abstract fields. Proximity searching in PubMed was introduced in November 2022; for more information and FAQs, see: PubMed Update: Proximity Search Now Available in PubMed​.
  • "Sort by" Moved Out of Display Options for Quick Access July 27, 2023
    ​The "Sort by" drop-down menu used to change the sort order of PubMed search results has been moved out of the "Display options" button and now appears as a standalone feature at the top of the search results page, making it easier and faster to change the sort order of your search results.​
  • Lengthy author lists truncated in search results March 29, 2023
    ​PubMed has been updated to streamline the display of lengthy author lists in search results. When viewing search results in the Summary display format, author lists are now truncated after 1,200 characters followed by an ellipsis (…) and a link to "See abstract for full author list". In practice, this change applies to citations with […]
  • Journal Filter Category Renamed January 5, 2023
    The JOURNAL filter category has been renamed to OTHER. This filter category contains the MEDLINE filter and a new “Exclude preprints” filter. You can add these filters to your filter sidebar using the “Additional filters” button.
  • MESH Update December 8, 2022
    ​PubMed MEDLINE indexed citations and the MeSH database have been updated with 2023 MeSH vocabulary.
  • Proximity Searching November 29, 2022
    ​Proximity searching is now available in PubMed. You can use proximity searching to search for multiple terms appearing in any order within a specified distance of one another in the [Title] or [Title/Abstract] fields.
  • Favorites Button Updated to Collections Button November 16, 2022
    ​The Collections button has the same functionality as Send to: Collections. Send to: Collections will continue to be available in PubMed with no changes. The change from a Favorites button to Collections button was made to provide the same functionality and user experience in both PubMed and PMC. It will also be added to article pages […]

Consume PeopleSoft Intergration Broker SOAP Service with ASP.NET



I searched high and low for documentation on connecting to Integration Broker(IB) with asp.net v4.x and I found some documentation out there but even google didn’t recover anything useful on how to get a basic asp.net web application to display Integration Broker SOAP web service data and I found none which really covered how to truly get this working.  I was finally able, with some help of a tutorial and a savvy administrator to get IB content into formatted asp.net output, I eventually used WSDL.exe from Microsoft to create a flat asp.net proxy service but the first goal was a proof of concept where some data PeopleSoft Job Posting data was loaded into a web page.

For the IB setup you do need to work through getting a WSDL output file to show up in a browser window.  I’d recommend setting up an intranet no auth required solution first, something like jobs or job_description.   I’m not going to get into the how of this part of the process, it take a little time but there’s a lot of documentation out there. on this part of the process.   Basically you get the wsdl for SOAP.  Once you have the service definition you’d expect it to be pretty straight-forward, but these are complex types and the both the request and response have a corresponding XSDs so if you are writing code you’ve either got to use a proxy or send multiple requests to retrieve this data.

SOAPUI to the rescue!  For working with SOAP complex types this is a terrific tool.  Once you have the working WSDL you create a SOAP project and copy the WSDL URL into SOAPUI and whalla SOAPUI will display the XML which is returned for each of the five service operations.  I’d suggest you start with for _G for getting an individual object and _F for finding all operations, so for example one operation may be personal_datav2_G, basically Get Individual Record details.

So you want to pull a list or single data item from IB into a web page or console app what next?  Most of what I found pointed to BizTalk for all integrations of PeopleSoft IB and asp.net.   But what if you don’t want to make the leap to having to spin up, support and provide the server resources required to run BizTalk, learn and provision BizTalk just to grab a little data.   After taking several paths I found one that worked well.   I was able to get Visual Studio to consume the WSDL with a Service Reference advanced options >  web service.  I did have much luck using the Service Reference in Visual Studio for this.   To get this working I ended up having to manually create the WSDL with the wsdl.exe creation tool.   Once this was created you can then write code using this proxy.  You create an object based on the proxy, which is kind of ugly, code below.

One important change you may need to edit your proxy class string collections, older versions of WSDL conversion utility contained a bug.   To do this replace [ ][ ] of each array/list object with [ ].  This is a bug in the wsdl creation code and it was not at all clear this problem existed so look for this problem.  You code for FIND _F_OperationName operation will blow up on a number of object calls which are trying to store.  Here is the code which worked.

Find__CompIntfc_CI_POS_DESCTypeShape findJobs = new Find_CompIntfc_CI_POS_DESCTypeShape();
            JOBCODETypeShape2 job2 = new JOBCODETypeShape2();
            job2.Value = "";
            findJobs.JOBCODE = job2;
            CI_POS_DESC_PortTypeClient clt = new CI_POS_DESC_PortTypeClient();
            CI_POS_DESCComplexTypeShape1[] compT = new CI_POS_DESCComplexTypeShape1[1000];
            compT = clt.CI_CI_FAHC_POS_DESC_F(findJobs);
            jobLen = compT.Length;
            jobTotal = jobLen;
            for (int j = 0; j < compT.Length; j++)
            {
                jobList.Add(compT[j].JOBCODE.Value, compT[j].DESCR.Value);
            }
            string jsonJobs = JsonConvert.SerializeObject(jobList);
            return jsonJobs;

No Comments Yet

Leave a Reply