reps_client 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. data/.gitignore +8 -0
  2. data/.rspec +1 -0
  3. data/.rvmrc +2 -0
  4. data/Gemfile +4 -0
  5. data/README.md +62 -0
  6. data/Rakefile +14 -0
  7. data/lib/reps_client.rb +12 -0
  8. data/lib/reps_client/client.rb +95 -0
  9. data/lib/reps_client/community.rb +23 -0
  10. data/lib/reps_client/configuration.rb +83 -0
  11. data/lib/reps_client/errors.rb +36 -0
  12. data/lib/reps_client/lead.rb +291 -0
  13. data/lib/reps_client/pick_list.rb +62 -0
  14. data/lib/reps_client/version.rb +3 -0
  15. data/reps_client.gemspec +36 -0
  16. data/spec/fixtures/faults/client_fault.xml +28 -0
  17. data/spec/fixtures/faults/invalid_enterprise_key_fault.xml +25 -0
  18. data/spec/fixtures/faults/server_fault.xml +25 -0
  19. data/spec/fixtures/get_communities/multiple_communities.xml +59 -0
  20. data/spec/fixtures/get_communities/single_community.xml +54 -0
  21. data/spec/fixtures/get_pick_lists/full_pick_lists.xml +100 -0
  22. data/spec/fixtures/get_pick_lists/single_prefix.xml +70 -0
  23. data/spec/fixtures/get_pick_lists/single_relationship_type.xml +70 -0
  24. data/spec/fixtures/get_pick_lists/single_source.xml +71 -0
  25. data/spec/fixtures/get_pick_lists/single_suffix.xml +70 -0
  26. data/spec/reps_client/client_spec.rb +217 -0
  27. data/spec/reps_client/community_spec.rb +139 -0
  28. data/spec/reps_client/configuration_spec.rb +132 -0
  29. data/spec/reps_client/errors_spec.rb +56 -0
  30. data/spec/reps_client/lead_spec.rb +906 -0
  31. data/spec/reps_client/pick_list_spec.rb +320 -0
  32. data/spec/reps_client_spec.rb +11 -0
  33. data/spec/spec_helper.rb +21 -0
  34. data/spec/support/fault_handler_shared_examples.rb +51 -0
  35. data/spec/support/lead_shared_examples.rb +33 -0
  36. data/spec/support/pick_list_shared_examples.rb +16 -0
  37. metadata +259 -0
@@ -0,0 +1,62 @@
1
+ require 'modelish/validations'
2
+
3
+ module RepsClient
4
+ class Prefix < Modelish::Base
5
+ property :prefix_id, :from => :user_list_idy, :type => Integer
6
+ property :value, :from => :list_value, :type => String
7
+ end
8
+
9
+ class Suffix < Modelish::Base
10
+ property :suffix_id, :from => :user_list_idy, :type => Integer
11
+ property :value, :from => :list_value, :type => String
12
+ end
13
+
14
+ class RelationshipType < Modelish::Base
15
+ property :relationship_type_id, :from => :relationship_type_idy, :type => Integer
16
+ property :name, :from => :relationship_name, :type => String
17
+ end
18
+
19
+ class Source < Modelish::Base
20
+ property :source_id, :from => :source_idy, :type => Integer
21
+ property :code, :type => String
22
+ property :description, :type => String
23
+ end
24
+
25
+ module PickListMethods
26
+ include Modelish::Validations
27
+
28
+ # Retrieves "pick list values" for a particular community from the REPS service.
29
+ # A pick list contains the possible values for an enumeration (e.g. the possible
30
+ # choices from a drop-down list in a "Contact Us" form).
31
+ #
32
+ # There are four types of pick lists:
33
+ # * `:prefix` - Array<RepsClient::Prefix> values with name prefixes/salutations (e.g. "Ms.")
34
+ # * `:suffix` - Array<RepsClient::Suffix> values with name suffixes (e.g. "Jr.")
35
+ # * `:relationship_type` - Array<RepsClient::Suffix> values with relationship of contact
36
+ # to prospect
37
+ # * `:source` - Array<rRepsClient::Source> values
38
+ #
39
+ # @param [Integer] community_id the REPS community id for a particular location
40
+ # @return [Hash<Symbol,Array>] the map of pick list types to pick lists
41
+ def get_pick_lists(community_id)
42
+ PickListMethods.validate_required!(:community_id => community_id)
43
+
44
+ response = send_soap_request(:get_pick_lists, :community_id => community_id, :order! => [:enterprise_key,:community_id])
45
+ lists = response.to_hash[:get_pick_lists_response][:get_pick_lists_result][:diffgram][:pick_lists]
46
+
47
+ result = {}
48
+ [:prefix, :suffix, :relationship_type, :source].each do |k|
49
+ result[k] = process_pick_list(k, lists)
50
+ end
51
+
52
+ result
53
+ end
54
+
55
+ private
56
+ def process_pick_list(pick_list_type, pick_lists)
57
+ flat_list = [pick_lists[pick_list_type] || []].flatten
58
+ class_name = pick_list_type.to_s.gsub(/(?:^|_)(.)/) { $1.upcase } # camelize
59
+ flat_list.collect { |p| RepsClient.const_get(class_name).new(p) }
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,3 @@
1
+ module RepsClient
2
+ VERSION = '0.0.1'
3
+ end
@@ -0,0 +1,36 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+ require "reps_client/version"
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "reps_client"
6
+ s.version = RepsClient::VERSION
7
+ s.authors = ["maeve"]
8
+ s.email = ["maeve.revels@g5platform.com"]
9
+ s.homepage = ""
10
+ s.summary = %q{Adapter for MDI Achieve REPS Leads}
11
+ s.description = %q{A simple wrapper around a SOAP client for the MDI Achieve REPS Leads web service.}
12
+
13
+ s.rubyforge_project = "reps_client"
14
+
15
+ s.files = `git ls-files`.split("\n")
16
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
17
+
18
+ s.require_paths = ["lib"]
19
+
20
+ s.add_dependency('modelish', '>=0.1.3')
21
+ s.add_dependency('configlet', '~>2.1')
22
+
23
+ s.add_dependency('savon', '~>0.9.7')
24
+ s.add_development_dependency('savon_spec', '~>0.1')
25
+
26
+ s.add_development_dependency('rspec', '~>2.6')
27
+ s.add_development_dependency('webmock', '~>1.7')
28
+ s.add_development_dependency('fakefs', '~>0.4')
29
+
30
+ s.add_development_dependency('yard', '~>0.7')
31
+ s.add_development_dependency('rdiscount', '~>1.6')
32
+
33
+ # specify dependencies here, for example:
34
+ # s.add_development_dependency "cucumber"
35
+ # s.add_runtime_dependency "rest-client"
36
+ end
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://schemas.xmlsoap.org/ws/2004/08/addressing/fault</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:eef7fe50-6ae5-413b-97af-6b4d17d7ac79</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:ae3fa71d-68a3-4b5a-827c-b077b8c83a6b</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-1c32331f-9e38-4eca-ac59-3f059f05b314">
10
+ <wsu:Created>2011-10-05T18:47:58Z</wsu:Created>
11
+ <wsu:Expires>2011-10-05T18:52:58Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <soap:Fault>
17
+ <faultcode>soap:Client</faultcode>
18
+ <faultstring>System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: http://www.mdiachieve.com/GetCommunitiesTest.
19
+ at System.Web.Services.Protocols.Soap11ServerProtocolHelper.RouteRequest()
20
+ at System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage message)
21
+ at Microsoft.Web.Services3.WseProtocol.RouteRequest(SoapServerMessage message)
22
+ at System.Web.Services.Protocols.SoapServerProtocol.Initialize()
23
+ at System.Web.Services.Protocols.ServerProtocol.SetContext(Type type, HttpContext context, HttpRequest request, HttpResponse response)
24
+ at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean&amp; abortProcessing)</faultstring>
25
+ <detail/>
26
+ </soap:Fault>
27
+ </soap:Body>
28
+ </soap:Envelope>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://schemas.xmlsoap.org/ws/2004/08/addressing/fault</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:7cabc510-7ea8-4aa4-b2a9-a6a170109dbe</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:b3dbcf84-fbc1-4e79-a224-ffe09c819319</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-c5b9fc0b-3b8f-42af-b710-97db17870833">
10
+ <wsu:Created>2011-10-05T18:46:42Z</wsu:Created>
11
+ <wsu:Expires>2011-10-05T18:51:42Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <soap:Fault>
17
+ <faultcode>InvalidEnterpriseKey</faultcode>
18
+ <faultstring>System.Web.Services.Protocols.SoapException: Invalid Enterprise Key.
19
+ at MDIAchieve.REPS.WebServices.Lead.GetDatabaseInfo(String enterpriseKey, String&amp; databaseServer, String&amp; database)
20
+ at MDIAchieve.REPS.WebServices.Lead.GetConnectionString(String enterpriseKey)
21
+ at MDIAchieve.REPS.WebServices.Lead.GetCommunities(String enterpriseKey)</faultstring>
22
+ <detail/>
23
+ </soap:Fault>
24
+ </soap:Body>
25
+ </soap:Envelope>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://schemas.xmlsoap.org/ws/2004/08/addressing/fault</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:d57782cc-08ff-41a2-9779-943ade868ac4</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:253837c5-9db6-47bb-bce6-473d2f91e291</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-266cd28f-8d9b-4df9-a8a9-faa6108102e0">
10
+ <wsu:Created>2011-10-24T19:35:26Z</wsu:Created>
11
+ <wsu:Expires>2011-10-24T19:40:26Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <soap:Fault>
17
+ <faultcode>soap:Server</faultcode>
18
+ <faultstring>System.Web.Services.Protocols.SoapException: Server was unable to process request. ---&gt; System.NullReferenceException: Object reference not set to an instance of an object.
19
+ at MDIAchieve.REPS.WebServices.Lead.CheckRules(Contact c, Prospect p)
20
+ at MDIAchieve.REPS.WebServices.Lead.SaveLead(String enterpriseKey, Int32 communityId, Contact newContact, Prospect newProspect)
21
+ --- End of inner exception stack trace ---</faultstring>
22
+ <detail/>
23
+ </soap:Fault>
24
+ </soap:Body>
25
+ </soap:Envelope>
@@ -0,0 +1,59 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://www.mdiachieve.com/GetCommunitiesResponse</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:83465de3-8df4-4a8e-842c-e43a5130a104</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:5ba1d76d-b011-49a9-942a-44dfffd32c5c</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-77445321-8987-481b-809f-ce5b9bfe16f5">
10
+ <wsu:Created>2011-10-05T18:43:05Z</wsu:Created>
11
+ <wsu:Expires>2011-10-05T18:48:05Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <GetCommunitiesResponse xmlns="http://www.mdiachieve.com/">
17
+ <GetCommunitiesResult>
18
+ <xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="NewDataSet">
19
+ <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Community" msdata:Locale="en-US">
20
+ <xs:complexType>
21
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
22
+ <xs:element name="Community" msdata:CaseSensitive="False" msdata:Locale="en-US">
23
+ <xs:complexType>
24
+ <xs:sequence>
25
+ <xs:element name="CommunityIDY" type="xs:int" minOccurs="0"/>
26
+ <xs:element name="Name" type="xs:string" minOccurs="0"/>
27
+ <xs:element name="CommunityAddress1" type="xs:string" minOccurs="0"/>
28
+ <xs:element name="CommunityAddress2" type="xs:string" minOccurs="0"/>
29
+ <xs:element name="CommunityCity" type="xs:string" minOccurs="0"/>
30
+ <xs:element name="CommunityState" type="xs:string" minOccurs="0"/>
31
+ <xs:element name="CommunityZip" type="xs:string" minOccurs="0"/>
32
+ </xs:sequence>
33
+ </xs:complexType>
34
+ </xs:element>
35
+ </xs:choice>
36
+ </xs:complexType>
37
+ </xs:element>
38
+ </xs:schema>
39
+ <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
40
+ <DocumentElement xmlns="">
41
+ <Community diffgr:id="Community1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
42
+ <CommunityIDY>7</CommunityIDY>
43
+ <Name>The Homestead at Babbling Brook</Name>
44
+ </Community>
45
+ <Community diffgr:id="Community6" msdata:rowOrder="8" diffgr:hasChanges="inserted">
46
+ <CommunityIDY>1</CommunityIDY>
47
+ <Name>The Gardens at Countryside Meadows</Name>
48
+ <CommunityAddress1>999 Prairie View Ln</CommunityAddress1>
49
+ <CommunityAddress2>Suite 42</CommunityAddress2>
50
+ <CommunityCity>Detroit</CommunityCity>
51
+ <CommunityState>MI</CommunityState>
52
+ <CommunityZip>11235</CommunityZip>
53
+ </Community>
54
+ </DocumentElement>
55
+ </diffgr:diffgram>
56
+ </GetCommunitiesResult>
57
+ </GetCommunitiesResponse>
58
+ </soap:Body>
59
+ </soap:Envelope>
@@ -0,0 +1,54 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://www.mdiachieve.com/GetCommunitiesResponse</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:83465de3-8df4-4a8e-842c-e43a5130a104</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:5ba1d76d-b011-49a9-942a-44dfffd32c5c</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-77445321-8987-481b-809f-ce5b9bfe16f5">
10
+ <wsu:Created>2011-10-05T18:43:05Z</wsu:Created>
11
+ <wsu:Expires>2011-10-05T18:48:05Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <GetCommunitiesResponse xmlns="http://www.mdiachieve.com/">
17
+ <GetCommunitiesResult>
18
+ <xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="NewDataSet">
19
+ <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Community" msdata:Locale="en-US">
20
+ <xs:complexType>
21
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
22
+ <xs:element name="Community" msdata:CaseSensitive="False" msdata:Locale="en-US">
23
+ <xs:complexType>
24
+ <xs:sequence>
25
+ <xs:element name="CommunityIDY" type="xs:int" minOccurs="0"/>
26
+ <xs:element name="Name" type="xs:string" minOccurs="0"/>
27
+ <xs:element name="CommunityAddress1" type="xs:string" minOccurs="0"/>
28
+ <xs:element name="CommunityAddress2" type="xs:string" minOccurs="0"/>
29
+ <xs:element name="CommunityCity" type="xs:string" minOccurs="0"/>
30
+ <xs:element name="CommunityState" type="xs:string" minOccurs="0"/>
31
+ <xs:element name="CommunityZip" type="xs:string" minOccurs="0"/>
32
+ </xs:sequence>
33
+ </xs:complexType>
34
+ </xs:element>
35
+ </xs:choice>
36
+ </xs:complexType>
37
+ </xs:element>
38
+ </xs:schema>
39
+ <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
40
+ <DocumentElement xmlns="">
41
+ <Community diffgr:id="Community1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
42
+ <CommunityIDY>2</CommunityIDY>
43
+ <Name>Grouch Towers</Name>
44
+ <CommunityAddress1>123 Sesame St</CommunityAddress1>
45
+ <CommunityCity>New York</CommunityCity>
46
+ <CommunityState>NY</CommunityState>
47
+ <CommunityZip>12345</CommunityZip>
48
+ </Community>
49
+ </DocumentElement>
50
+ </diffgr:diffgram>
51
+ </GetCommunitiesResult>
52
+ </GetCommunitiesResponse>
53
+ </soap:Body>
54
+ </soap:Envelope>
@@ -0,0 +1,100 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://www.mdiachieve.com/GetPickListsResponse</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:cb9bfa9e-1ccf-4cbd-bcee-d6ede6c33356</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:30678ac1-b23c-4088-9688-4491f438f51a</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-c78ed006-c873-4052-8a40-672f10840366">
10
+ <wsu:Created>2011-10-10T05:06:08Z</wsu:Created>
11
+ <wsu:Expires>2011-10-10T05:11:08Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <GetPickListsResponse xmlns="http://www.mdiachieve.com/">
17
+ <GetPickListsResult>
18
+ <xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="PickLists">
19
+ <xs:element name="PickLists" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
20
+ <xs:complexType>
21
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
22
+ <xs:element name="Prefix" msdata:CaseSensitive="False" msdata:Locale="en-US">
23
+ <xs:complexType>
24
+ <xs:sequence>
25
+ <xs:element name="UserListIDY" type="xs:int" minOccurs="0"/>
26
+ <xs:element name="ListValue" type="xs:string" minOccurs="0"/>
27
+ </xs:sequence>
28
+ </xs:complexType>
29
+ </xs:element>
30
+ <xs:element name="Suffix" msdata:CaseSensitive="False" msdata:Locale="en-US">
31
+ <xs:complexType>
32
+ <xs:sequence>
33
+ <xs:element name="UserListIDY" type="xs:int" minOccurs="0"/>
34
+ <xs:element name="ListValue" type="xs:string" minOccurs="0"/>
35
+ </xs:sequence>
36
+ </xs:complexType>
37
+ </xs:element>
38
+ <xs:element name="RelationshipType" msdata:CaseSensitive="False" msdata:Locale="en-US">
39
+ <xs:complexType>
40
+ <xs:sequence>
41
+ <xs:element name="RelationshipTypeIDY" type="xs:int" minOccurs="0"/>
42
+ <xs:element name="RelationshipName" type="xs:string" minOccurs="0"/>
43
+ </xs:sequence>
44
+ </xs:complexType>
45
+ </xs:element>
46
+ <xs:element name="Source" msdata:CaseSensitive="False" msdata:Locale="en-US">
47
+ <xs:complexType>
48
+ <xs:sequence>
49
+ <xs:element name="SourceIDY" type="xs:int" minOccurs="0"/>
50
+ <xs:element name="Code" type="xs:string" minOccurs="0"/>
51
+ <xs:element name="Description" type="xs:string" minOccurs="0"/>
52
+ </xs:sequence>
53
+ </xs:complexType>
54
+ </xs:element>
55
+ </xs:choice>
56
+ </xs:complexType>
57
+ </xs:element>
58
+ </xs:schema>
59
+ <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
60
+ <PickLists xmlns="">
61
+ <Prefix diffgr:id="Prefix1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
62
+ <UserListIDY>222</UserListIDY>
63
+ <ListValue>Dr. And Mrs. </ListValue>
64
+ </Prefix>
65
+ <Prefix diffgr:id="Prefix2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
66
+ <UserListIDY>202</UserListIDY>
67
+ <ListValue>Mr. &amp; Mrs.</ListValue>
68
+ </Prefix>
69
+ <Suffix diffgr:id="Suffix1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
70
+ <UserListIDY>90</UserListIDY>
71
+ <ListValue>III</ListValue>
72
+ </Suffix>
73
+ <Suffix diffgr:id="Suffix2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
74
+ <UserListIDY>36</UserListIDY>
75
+ <ListValue>Jr.</ListValue>
76
+ </Suffix>
77
+ <RelationshipType diffgr:id="RelationshipType1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
78
+ <RelationshipTypeIDY>82</RelationshipTypeIDY>
79
+ <RelationshipName>Aunt </RelationshipName>
80
+ </RelationshipType>
81
+ <RelationshipType diffgr:id="RelationshipType2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
82
+ <RelationshipTypeIDY>91</RelationshipTypeIDY>
83
+ <RelationshipName>Not specified</RelationshipName>
84
+ </RelationshipType>
85
+ <Source diffgr:id="Source1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
86
+ <SourceIDY>251</SourceIDY>
87
+ <Code>DM</Code>
88
+ <Description>Direct Mail</Description>
89
+ </Source>
90
+ <Source diffgr:id="Source2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
91
+ <SourceIDY>713</SourceIDY>
92
+ <Code>Press &amp; Sun Bulletin</Code>
93
+ <Description>Pleasant Surprises</Description>
94
+ </Source>
95
+ </PickLists>
96
+ </diffgr:diffgram>
97
+ </GetPickListsResult>
98
+ </GetPickListsResponse>
99
+ </soap:Body>
100
+ </soap:Envelope>
@@ -0,0 +1,70 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
3
+ <soap:Header>
4
+ <wsa:Action>http://www.mdiachieve.com/GetPickListsResponse</wsa:Action>
5
+ <wsa:MessageID>urn:uuid:cb9bfa9e-1ccf-4cbd-bcee-d6ede6c33356</wsa:MessageID>
6
+ <wsa:RelatesTo>urn:uuid:30678ac1-b23c-4088-9688-4491f438f51a</wsa:RelatesTo>
7
+ <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
8
+ <wsse:Security>
9
+ <wsu:Timestamp wsu:Id="Timestamp-c78ed006-c873-4052-8a40-672f10840366">
10
+ <wsu:Created>2011-10-10T05:06:08Z</wsu:Created>
11
+ <wsu:Expires>2011-10-10T05:11:08Z</wsu:Expires>
12
+ </wsu:Timestamp>
13
+ </wsse:Security>
14
+ </soap:Header>
15
+ <soap:Body>
16
+ <GetPickListsResponse xmlns="http://www.mdiachieve.com/">
17
+ <GetPickListsResult>
18
+ <xs:schema xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="PickLists">
19
+ <xs:element name="PickLists" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
20
+ <xs:complexType>
21
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
22
+ <xs:element name="Prefix" msdata:CaseSensitive="False" msdata:Locale="en-US">
23
+ <xs:complexType>
24
+ <xs:sequence>
25
+ <xs:element name="UserListIDY" type="xs:int" minOccurs="0"/>
26
+ <xs:element name="ListValue" type="xs:string" minOccurs="0"/>
27
+ </xs:sequence>
28
+ </xs:complexType>
29
+ </xs:element>
30
+ <xs:element name="Suffix" msdata:CaseSensitive="False" msdata:Locale="en-US">
31
+ <xs:complexType>
32
+ <xs:sequence>
33
+ <xs:element name="UserListIDY" type="xs:int" minOccurs="0"/>
34
+ <xs:element name="ListValue" type="xs:string" minOccurs="0"/>
35
+ </xs:sequence>
36
+ </xs:complexType>
37
+ </xs:element>
38
+ <xs:element name="RelationshipType" msdata:CaseSensitive="False" msdata:Locale="en-US">
39
+ <xs:complexType>
40
+ <xs:sequence>
41
+ <xs:element name="RelationshipTypeIDY" type="xs:int" minOccurs="0"/>
42
+ <xs:element name="RelationshipName" type="xs:string" minOccurs="0"/>
43
+ </xs:sequence>
44
+ </xs:complexType>
45
+ </xs:element>
46
+ <xs:element name="Source" msdata:CaseSensitive="False" msdata:Locale="en-US">
47
+ <xs:complexType>
48
+ <xs:sequence>
49
+ <xs:element name="SourceIDY" type="xs:int" minOccurs="0"/>
50
+ <xs:element name="Code" type="xs:string" minOccurs="0"/>
51
+ <xs:element name="Description" type="xs:string" minOccurs="0"/>
52
+ </xs:sequence>
53
+ </xs:complexType>
54
+ </xs:element>
55
+ </xs:choice>
56
+ </xs:complexType>
57
+ </xs:element>
58
+ </xs:schema>
59
+ <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
60
+ <PickLists xmlns="">
61
+ <Prefix diffgr:id="Prefix1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
62
+ <UserListIDY>210</UserListIDY>
63
+ <ListValue>Attorney</ListValue>
64
+ </Prefix>
65
+ </PickLists>
66
+ </diffgr:diffgram>
67
+ </GetPickListsResult>
68
+ </GetPickListsResponse>
69
+ </soap:Body>
70
+ </soap:Envelope>