The data model has not changed much from the book.
The parties are connected with the PartyRelationship entity, and they
are connected with their roles. The Party IDs and RoleType IDs are
required to make a PartyRelationship value. The PartyRelationshipType is
optional.
Adrian Crum
Sandglass Software
www.sandglass-software.com
On 1/16/2015 7:05 PM, Ron Wheeler wrote:
Thanks Adrian.
Can you elaborate on what this means "The party relationship type is
optional, typically the party roles are enough to describe the
relationship."
Can you explain how the various sales reps and different customers are
going to be connected without a partyRelationship.
I really appreciate all of the contributions in this area since it is
not documented in the wiki.
I am a bit skeptical about relying on a book that is 14 years old since
the project is very active.
Ron
On 16/01/2015 6:42 PM, Adrian Crum wrote:
The customer is in the role Customer, and Leslie is in the role Sales
Rep. The party relationship type is optional, typically the party
roles are enough to describe the relationship.
You could create a custom entity for SIC codes, or use the Enumeration
entity.
Adrian Crum
Sandglass Software
www.sandglass-software.com
On 1/16/2015 1:17 PM, Ron Wheeler wrote:
She is the "Account Manager" (Salesperson assigned to this Customer).
On 16/01/2015 2:57 PM, Adrian Crum wrote:
What is Leslie's role? Why is the customer related to Leslie?
Adrian Crum
Sandglass Software
www.sandglass-software.com
On 1/16/2015 11:42 AM, Ron Wheeler wrote:
Does this look like a file that could be imported to produce 2
customers. Both should be assigned to "LESLIE".
I gather from the partyRelationshipName that this is the correct
Type
<PartyRelationshipType description="" hasTable="N" parentTypeId=""
partyRelationshipName="Account owned by"
partyRelationshipTypeId="ACCOUNT" roleTypeIdValidFrom=""
roleTypeIdValidTo=""/>
The partyRelationshipTypeId="ACCOUNT" could be better.
partyRelationshipTypeId="ACCOUNT_OWNER" would be clearer and more
consistent with
<PartyRelationshipType description="" hasTable="N" parentTypeId=""
partyRelationshipName="Lead Owned by"
partyRelationshipTypeId="LEAD_OWNER" roleTypeIdValidFrom=""
roleTypeIdValidTo=""/>
and
<PartyRelationshipType description="" hasTable="N" parentTypeId=""
partyRelationshipName="Lead Owners/Managers"
partyRelationshipTypeId="LEAD_OWN_GRP_MEMBER" roleTypeIdValidFrom=""
roleTypeIdValidTo=""/>
They have a SIC code and an SIC description assigned to them as
attributes.
Is there are better way to handle this (Table of SIC entities and a
relation to it or does that require code changes)?
<entity-engine-xml>
<PartyGroup partyId="FOUR SEASONS HOTEL" groupName="OFBIZ COMPANY
NAME"/>
<Party partyId="FOUR SEASONS HOTEL" partyTypeId="PARTY_GROUP"
externalId="100012"/>
<PartyRole partyId="FOUR SEASONS HOTEL" roleTypeId="CUSTOMER"/>
<PartyAttribute partyId="FOUR SEASONS HOTEL" attrName="SIC"
attrValue="13"/>
<PartyAttribute partyId="FOUR SEASONS HOTEL" attrName="SIC
Description"
attrValue="Miscellaneous"/>
<ContactMech contactMechId="FOUR SEASONS HOTEL_POSTAL"
contactMechTypeId="POSTAL_ADDRESS"/>
<PostalAddress contactMechId="FOUR SEASONS HOTEL_POSTAL" toName="FOUR
SEASONS HOTEL" address1="123 Main Street" city="NewYork"
countryGeoId="USA" stateProvinceGeoId="NY" postalCode="126785"/>
<PartyContactMech partyId="FOUR SEASONS HOTEL" contactMechId="FOUR
SEASONS HOTEL-POSTAL" fromDate="2015-01-01 00:00:00.000"
allowSolicitation="Y"/>
<ContactMech contactMechId="FOUR SEASONS HOTEL_EMAIL"
contactMechTypeId="EMAIL_ADDRESS" infoString="t...@gmail.com"/>
<PartyContactMech partyId="FOUR SEASONS HOTEL" contactMechId="FOUR
SEASONS HOTEL_EMAIL" fromDate="2015-01-01 00:00:00.000"
allowSolicitation="Y"/>
<PartyContactMechPurpose contactMechPurposeTypeId="PRIMARY_EMAIL"
partyId="FOUR SEASONS HOTEL" contactMechId="FOUR SEASONS HOTEL_MAIL"
fromDate="2015-01-01 00:00:00.000"/>
<ContactMech contactMechId="FOUR SEASONS HOTEL_PHONE"
contactMechTypeId="POSTAL_ADDRESS"/>
<TelecomNumber contactMechId="FOUR SEASONS HOTEL_PHONE" type="PHONE"
countryCode="1" areaCode="254" contactNumber="555-4534"/>
<PartyContactMech partyId="FOUR SEASONS HOTEL" contactMechId="FOUR
SEASONS HOTEL_PHONE" fromDate="2015-01-01 00:00:00.000"
allowSolicitation="Y"/>
<PartyRelationship partyIdFrom="FOUR SEASONS HOTEL"
partyIdTo="LESLIE"
partyRelationshipTypeId="ACCOUNT" roleTypeIdFrom="_NA_"
roleTypeIdTo="_NA_" fromDate="2015-01-01 00:00:00.000"/>
<PartyGroup partyId="ABC ELECTRIC" groupName="OFBIZ COMPANY NAME"/>
<Party partyId="ABC ELECTRIC" partyTypeId="PARTY_GROUP"
externalId="100041"/>
<PartyRole partyId="ABC ELECTRIC" roleTypeId="CUSTOMER"/>
<PartyAttribute partyId="ABC ELECTRIC" attrName="SIC"
attrValue="02D"/>
<PartyAttribute partyId="ABC ELECTRIC" attrName="SIC Description"
attrValue="Electrical Contractor"/>
<ContactMech contactMechId="ABC ELECTRIC_POSTAL"
contactMechTypeId="POSTAL_ADDRESS"/>
<PostalAddress contactMechId="ABC ELECTRIC_POSTAL" toName="ABC
ELECTRIC"
address1="123 Main Street" city="Toronto" postalCode="N5N 5X5"
countryGeoId="CANADA" stateProvinceGeoId="ON" />
<PartyContactMech partyId="ABC ELECTRIC" contactMechId="ABC
ELECTRIC-POSTAL" fromDate="2015-01-01 00:00:00.000"
allowSolicitation="Y"/>
<ContactMech contactMechId="ABC ELECTRIC_EMAIL"
contactMechTypeId="EMAIL_ADDRESS" infoString="t...@gmail.com"/>
<PartyContactMech partyId="ABC ELECTRIC" contactMechId="ABC
ELECTRIC_EMAIL" fromDate="2015-01-01 00:00:00.000"
allowSolicitation="Y"/>
<PartyContactMechPurpose contactMechPurposeTypeId="PRIMARY_EMAIL"
partyId="ABC ELECTRIC" contactMechId="ABC ELECTRIC_MAIL"
fromDate="2015-01-01 00:00:00.000"/>
<ContactMech contactMechId="ABC ELECTRIC_PHONE"
contactMechTypeId="POSTAL_ADDRESS"/>
<TelecomNumber contactMechId="ABC ELECTRIC_PHONE" type="PHONE"
countryCode="1" areaCode="506" contactNumber="555-4433"/>
<PartyContactMech partyId="ABC ELECTRIC" contactMechId="ABC
ELECTRIC_PHONE" fromDate="2015-01-01 00:00:00.000"
allowSolicitation="Y"/>
<PartyRelationship partyIdFrom="ABC ELECTRIC" partyIdTo="LESLIE"
partyRelationshipTypeId="ACCOUNT" roleTypeIdFrom="_NA_"
roleTypeIdTo="_NA_" fromDate="2015-01-01 00:00:00.000"/>
</entity-engine-xml>