SharePoint 2010: How to map documentset attibutes to objects - In SharePoint Webpart

Hey,
I guess it's a pretty simple question but I really do not get one inch closer to a solution. I'm working on a WebPart on SharePoint 2010 which manages a documentset (document library with an custom content type). Creating an storing of documentssets works fine
by now but I do have problems in mapping the stored sets to my c# objects backwards. I actually do not find the fields in my object structure while debugging my code
I create the docuemtset like this...
internal DocumentSet CreateDocumentSet(SPList spListObject, SPContentType spContentType, object itemToCreate, Type typeOfItemToCreate)
var properties = new Hashtable();
Guid id = Guid.NewGuid();
//Description
foreach (PropertyInfo p in typeOfItemToCreate.GetProperties())
properties.Add(p.Name, p.GetValue(itemToCreate, null));
SPFolder parentFolder = spListObject.RootFolder;
DocumentSet docSet = DocumentSet.Create(parentFolder, InnovationListName + "_" + id, spContentType.Id, properties, false);
return docSet;
I'm thinking of somethink like this ...
internal MyObject DocSetToObject(SPList list, int ID)
var docset = DocumentSet.GetDocumentSet(list.GetItemById(ID).Folder);
return new MyObject
Text= docset...,
Id = docset...,
Tags= docset...,
Title = docset...,
Hope you can help me out.. This problem is killn me  ^^ ;-)
Thanks
Spanky

Hi,
According to your description, you might want to create a class to perform the CRUD operations against a DocumentSet in your library.
Here is a demo about how to handle an item for your reference:
//Create a MyItemWrapper.cs:
public class MyItemWrapper
public int ID { get; set; }
public string Title { get; set; }
SPList list;
SPListItem item;
public MyItemWrapper()
using (SPSite site = new SPSite("http://sp"))
using (SPWeb web = site.RootWeb)
list = web.Lists["List2"];
item = list.Items[0];
this.ID = item.ID;
this.Title = item["Title"].ToString();
public void setTitle(string t)
item["Title"] = t;
item.Update();
this.Title = t;
Feel free to reply if this is not what you want.
Best regards
Patrick Liang
TechNet Community Support

Similar Messages

  • How to map a collection of object in TopLink?

    For (simple) example, I've a XSD that defines:
    <xsd:complexType name="AttachmentType">
    <xsd:sequence>
    <xsd:element name="docID" nillable="false" type="xsd:string"/>
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="MyDocType">
    <xsd:sequence>
    <xsd:element name="attachment" nillable="true" minOccurs="0"
    maxOccurs="unbounded" type="tns:AttachmentType"/>     
    </xsd:sequence>
    </xsd:complexType>
    This XSD is referenced by a WSDL. Using JDeveloper to generate a Java Web Service using the WSDL and will get the following classes:
    public class AttachmentType implements java.io.Serializable
    protected java.lang.String docID;
    public AttachmentType() {    }
    public java.lang.String getDocID() {        return docID;    }
    public void setDocID(java.lang.String docID) {        this.docID = docID;    }
    public class MyDocType implements java.io.Serializable
    protected AttachmentType[] attachment;
    public MyDocType () {    }
    public AttachmentType[] getAttachment() {        return attachment;    }
    public void setAttachment(AttachmentType[] attachment)
    this.attachment = attachment;
    Now I want to generate a XML document from MyDocType. I use TopLink (JAXB) to do the mapping. However, how to map the 'attachment' of type AttachmentType[]? TopLink seems only allowing List/Set/Collection container options.
    Anyone can help?
    Note: I have to use the classes generated from WSDL.
    Thanks!!

    Thanks. I'm using TopLink Workbench for the mapping
    and have no idea on how to specify the XML
    transformation mapping for array attribute. Can you
    tell me more?I was putting together an example of the transformation mapping but came up with a better way. It turns out that a transformation mapping isn't ideal because you have to take over some of the responsibility for converting XML to objects. A better solution is to intercept the calls to the getter and setter for the AttachmentType[] and convert between an Array and List. Just map the Array as a composite collection in the workbench and customize the attachment attribute mapping in code.
    Each mapping in TopLink has Accessor object responsible for getting and setting values in objects. If you choose method or direct access the mapping will have a different Accessor class. So the solution is to use an Accessor that converts the List TopLink builds into an Array of the correct type on set. On get, the Accessor creates a List from the Array.
    You can introduce a custom Accessor using an After Load method. I've put a complete example up on my googlepages account[1]. The key code is listed below. Note that this code assumes you're using direct instance variable access. Also, this code works with TopLink 10.1.3.2 and the TopLink 11 preview. It won't work with previous versions.
    The After Load class that changes the mapping accessor:
    public class MyDocCustomizer {
         public static void customize(ClassDescriptor descriptor) {
              XMLCompositeCollectionMapping mapping = (XMLCompositeCollectionMapping)
                   descriptor.getMappingForAttributeName("attachment");
              InstanceVariableAttributeAccessor existingAccessor =
                   (InstanceVariableAttributeAccessor) mapping.getAttributeAccessor();
              ListArrayTransformationAccessor transformationAccessor =
                   new ListArrayTransformationAccessor(AttachmentType.class, "attachment");
              transformationAccessor.initializeAttributes(descriptor.getJavaClass());
              mapping.setAttributeAccessor(transformationAccessor);
    }The custom InstanceVariableAccessor subclass:
    public class ListArrayTransformationAccessor extends
              InstanceVariableAttributeAccessor {
         private Class arrayClass;
         public ListArrayTransformationAccessor(Class arrayClass, String attributeName) {
              super();
              this.arrayClass = arrayClass;
              this.setAttributeName(attributeName);
         public Object getAttributeValueFromObject(Object anObject)
                   throws DescriptorException {
              Object[] attributeValueFromObject =
                   (Object[]) super.getAttributeValueFromObject(anObject);
              return Arrays.asList(attributeValueFromObject);
         public void setAttributeValueInObject(Object anObject, Object value)
                   throws DescriptorException {
              List collection = (List)value;
              Object[] array = (Object[]) Array.newInstance(arrayClass, collection.size());
              for (int i = 0; i < collection.size(); i++) {
                   Object element = collection.get(i);
                   Array.set(array, i, element);
              super.setAttributeValueInObject(anObject, array);
    }--Shaun
    http://ontoplink.blogspot.com
    [1] http://shaunmsmith.googlepages.com/Forum-519205-OXM-Array.zip

  • How to map XML to database object ?

    Hello,
    We are trying to convert XML file into XMLType object and then to our custom object type using registered XSD definition. So we doing this : clob with xml -> XMLObject -> our MMS_T object.
    The problem we experienced with transfering values of "type" and "status" attributes to object values MMS_T.TYPE and MMS_T.STATUS. Note that types MMS_T and ERROR_T are automatically created during schema
    (XSD) registration. See and try Listing 1.
    The second Listing contains anonymous pl/sql block with our testcase, please run it after registering schema. The output You will get should look like this one :
    Schema based
    Well-formed
    <?xml version="1.0" encoding="UTF-8"?>
    <mms-provisioning xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xdb="http://xmlns.oracle.com/xdb" type="subscription"
    status="error">
    <error code="1">Some error</error>
    <serviceID>iDnes</ser
    Type:,Status:,Error:1-Some error,ServiceID:iDnes,Method:SMS,MSISDN:+420602609903
    The problem is visible on the last line, where "Type" and "Status" object attributes should have its values that should come from XML, but they haven't. Where we were wrong ?
    Please help,
    Thanks & Regards,
    Radim.
    Note
    ====
    When we are trying to do xml.schemaValidate() in our example, it raises folowong errors :
    ORA-31154: invalid XML document
    ORA-19202: Error occurred in XML processing
    LSX-00310: local element or attribute should be namespace qualified
    ORA-06512: at "SYS.XMLTYPE", line 0
    ORA-06512: at line 27
    Listing 1
    =========
    declare
    xsd clob:=
    '<?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
    xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    xdb:mapStringToNCHAR="false"
    xdb:mapUnboundedStringToLob="false"
    xdb:storeVarrayAsTable="false"
    >
    <xs:element name="mms-provisioning" xdb:SQLType="MMS_T">
    <xs:complexType>
    <xs:sequence>
    <xs:element name="error" minOccurs="0" xdb:SQLName="ERROR" xdb:SQLType="ERROR_T">
    <xs:complexType>
    <xs:simpleContent>
    <xs:extension base="xs:string">
    <xs:attribute name="code" type="xs:decimal" use="required" xdb:SQLName="CODE" xdb:SQLType="NUMBER"/>
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    <xs:element name="serviceID" type="xs:string" xdb:SQLName="SERVICEID" xdb:SQLType="VARCHAR2"/>
    <xs:element name="method" type="xs:string" xdb:SQLName="METHOD" xdb:SQLType="VARCHAR2"/>
    <xs:element name="msisdn" type="xs:string" xdb:SQLName="MSISDN" xdb:SQLType="VARCHAR2"/>
    </xs:sequence>
    <xs:attribute name="type" type="type_t" use="required" xdb:SQLName="TYP" xdb:SQLType="VARCHAR2"/>
    <xs:attribute name="status" type="status_t" use="required" xdb:SQLName="STATUS" xdb:SQLType="VARCHAR2"/>
    </xs:complexType>
    </xs:element>
    <xs:simpleType name="status_t">
    <xs:restriction base="xs:string">
    <xs:maxLength value="30"/>
    <xs:enumeration value="new"/>
    <xs:enumeration value="pending"/>
    <xs:enumeration value="subscribed"/>
    <xs:enumeration value="error"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="type_t">
    <xs:restriction base="xs:string">
    <xs:maxLength value="30"/>
    <xs:enumeration value="subscription"/>
    <xs:enumeration value="unsubscription"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:schema>';
    begin
    dbms_XMLSchema.RegisterSchema (
    SchemaURL => 'http://www.eurotel.cz/xsd/mms-provisioning.xsd', SchemaDoc => xsd
    end;
    Listing 2
    =========
    declare
    o mms_t;
    doc clob :=
    '<?xml version="1.0" encoding="UTF-8"?>
    <mms-provisioning type="subscription" status="error">
    <error code="1">Some error</error>
    <serviceID>iDnes</serviceID>
    <method>SMS</method>
    <msisdn>+420602608696</msisdn>
    </mms-provisioning>';
    xml XMLType;
    begin
    xml := XMLType.createXML(XMLData => doc,schema => 'http://www.eurotel.cz/xsd/mms-provisioning.xsd'); --
    if xml.isSchemaBased() = 1 then
    dbms_output.put_line('Schema based');
    else
    dbms_output.put_line('Non-Schema based');
    end if;
    if xml.isFragment() = 1 then
    dbms_output.put_line('Fragment');
    else
    dbms_output.put_line('Well-formed');
    end if;
    --Crashes with errors
    --xml.schemaValidate();
    dbms_output.put_line(substr(xml.getstringval(),1,255));
    xml.toObject(o,schema => 'http://www.eurotel.cz/xsd/mms-provisioning.xsd', element => 'mms-provisioning');
    dbms_output.put_line(
    'Type:'||o.typ||
    ',Status:'||o.status||
    ',Error:'||o.error.code||'-'||o.error.sys_xdbbody$||
    ',ServiceID:'||o.serviceid||
    ',Method:'||o.method||
    ',MSISDN:'||o.msisdn);
    end;
    /

    thanks for the reply
    my source XML response will be looking something like this (it will be reponsed in a long string):
    <?xml version='1.0' encoding='UTF-8'?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
    <SOAP-ENV:Header>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
    <status>
    <retCode>00</retCode>
    <retCodeDesc>OK</retCodeDesc>
    <rRobjectId>09002347802d2981</rRobjectId>
    <rFileSize>7</rFileSize>
    <rTotalPages>1</rTotalPages>
    </status>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    my RFC is:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap-com:document:sap:rfc:functions" targetNamespace="urn:sap-com:document:sap:rfc:functions">
    <xsd:element name="ZRFC_SET_DOCUMENT.Response">
    <xsd:complexType>
    <xsd:all>
    <xsd:element name="RETCODE" type="xsd:string" minOccurs="0" />
    <xsd:element name="RETCODEDESC" type="xsd:string" minOccurs="0" />
    <xsd:element name="RFILESIZE" type="xsd:string" minOccurs="0" />
    <xsd:element name="RROJECTID" type="xsd:string" minOccurs="0" />
    <xsd:element name="RTOTALPAGES" type="xsd:string" minOccurs="0" />
    </xsd:all>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>

  • How to Map the parameters in GP interface?

    Hello All ,
    I have 2 callable objects in two different actions for same Block. How to map the first callable object output to input of second callable object ??
    Please give the clear details.
    Thanks
    Risha

    Hello,
    Goto the Block -> Parameters tab....select the 2 parameters ...click on Group button .....give a name to it and click 'Create Group' button.....
    Regards,
    Shikhil

  • How to map n x m to  i

    how to map  all the items to another node (0...unbounded)?
    head (0...unbounded)
      --  t1
        --t2
        --t2
       -- item (0....unbounded)
       i1
       i2
      i3
    Edited by: Shen Peng on Dec 7, 2010 9:28 AM

    Hi Shen,
    If the version of your PI system is less than 7.1, then you need to go for Java mapping to achieve this requirement.
    Here is a smple Java mapping code.
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.AbstractTrace;
    import com.sap.aii.mapping.api.StreamTransformationConstants;
    import java.util.Map;
    import java.io.*;
    public class PayloadToXMLField implements StreamTransformation {
        String strXML = new String();
         //Declare the XML tag for your XML message
         String StartXMLTag = "<Payload>";
         String EndXMLTag = "</Payload>";
        AbstractTrace trace;
        private Map param = null;
        public void setParameter(Map param) {
            this.param = param;
        public void execute(InputStream in, OutputStream out) {
            trace =
                (AbstractTrace) param.get(
                    StreamTransformationConstants.MAPPING_TRACE);
            trace.addInfo("Process Started");
            try {
                StringBuffer strbuffer = new StringBuffer();
                byte[] b = new byte[4096];
                for (int n;(n = in.read(b)) != -1;) {
                    strbuffer.append(new String(b, 0, n));
                strXML = strbuffer.toString();
            } catch (Exception e) {
                System.out.println("Exception Occurred");
            outputPayload =
                "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
                   + StartXMLTag
                   + strXML
                   + EndXMLTag;
            try {
                out.write(outputPayload.getBytes());
                   trace.addInfo("Process Completed");;
            } catch (Exception e) {
                trace.addInfo("Process Terminated: Error in writing out payload");;
    If you have PI 7.1, then refer the below link:
    /people/jyothi.anagani/blog/2010/06/17/convert-the-input-xml-to-string-in-pi-71-using-standard-graphical-mapping
    Thanks,

  • How to map 3 different Finished goods aginist one SFG Material

    Dear all,
    I have a SFG material "A " product. From this SFG -XX1, XX2,XX3 are the  3 different FG  product generated.
    How to map this 3 different FG againts One SFG.
    PLease tell me how to mapping this in Production?
    How to put Goods Receipt For XX1, XX2 & XX3?
    Regards
    Raghunath

    Dear ,
    This is a Co-Product scinario where One SFG good generating 3 different FG .You need  keep the following set up :
    1.In material master of the FG keep Co-Product Indicator ticked
    2.In BOM of ther SFG , keep all this three FG as BOM compoenet and Keep the negetive quantity which are getting produced for a base unit quanity .At the same time , selet the item line and go down to Basic Data Tab , keep the Co-Product Indicator ticked .
    3. To calculate the production cost of co-products give equivalence
    numbers in MRP2 view by clicking Joint Production push button
    or you can give the same in the settlement rule in the
    Production order by clicking Header menu - Settlement rule.
    5. You will get the GR qty for co-products while doing MB31, 101
    for the order of the header material.
    Hope this will help you to understand the business requirement .
    Regards
    JH
    Edited by: Jiaul Haque on Feb 9, 2010 8:52 AM

  • How to Map in SAP      ?

    Hi
    My client is Automobile industry.In the presales process my company delivers the goods to the dealer.On transit the goods are damaged.Instead of returning the goods the dealer him self repairs the goods and sends the credit memo to the company.The company will send the engineer for inspection and give the clearance certificate for the dealer.With reference to this we have to create the credit the customer.
    How to Map it SAP....?
    Plz send me the reply
    Regard's
    Prasad.

    Dear Prasad,
    As you r not taking d goodS back (or dealer is not sending them back) thus it's not a case of a Returns. Also there is no issue with d invoice either thus even Invoice Corrrection Request will not b generated.
    Thus it's a simple case of creating a Credit Memo Request for the required amount i.e the amount claimed 2 b spent by d dealer. This will obviously have a block which can b removed by d engineer who went for inspection (or some1else depending on d working of d organisation). Once the billing block is removed the dealer can b issued a Credit Memo in d usual way.
    Hope it answers ur query.
    regards
    PARAM

  • How to map new field in DSO

    I have added a new field to the dso and i have replicated the datasource as well which is showing the new field newly added in ecc. how can i map the new keyfigure in the transformation between the datasource and ods. its showin in the ds, can u pls tell me how to map now.

    Ya but the problem is I have an infosource in between and its not showing in the transformation between the dso and infosource.....nor the infosource and the datasource. But its there in the first transformation on the dso side, not on the inforsource side..... but how to get that field in the infosource side...so that i can map the field between both the transformations....between infosoucre and dso and infosouce and ds.....You know what I mean. the zfield is showin in the dso field structure in the first level mapping between dso and infosouce....but where do i map it.
    Edited by: Daniel on Nov 28, 2011 9:59 AM

  • How to Map the Unit field  in case of DSO and INFOCUBE

    Dear Experts,
    I have a issue ,Please help me to solve this
    I have DSO as provider ,
    And, i have to map transformations  btw the Datasource and DSO.
    In generic Data source,  i have unit fields like BASME,MEINS (Quantity units) & STWAE (currency field)
    and normal Quantity fields  like KWMNG,OAUME(quantity related),OAUWE (value related).
    In DSO data fields as Key figure info objects like  0Quantity (which have 0Unit as unit of measure) and some other  key figures which have there respective unit of measure in info object  definition.
    So you Please tell me how to map the Quantity ,Amounts, unit fields to key figures that we have.
    (How it will be for both DSO and Info cube is there any difference?)
    Edited by: AnjunathNaidu on Jan 18, 2012 1:20 PM

    Navasamol ,
    If it is works ,will u please tell me what is the difference ,if the transformations btw data source and DSO and
    what is the difference btw data source and info cube and btw DSO to Infocube or cube to cube .
    And i have  seen the Quantity fields  and there respective unit fields are mapped directly  to key figure info object
    in case of Info cube . Its working fine .
    If only 1:1 mapping allowed in DSO data fields key figures and there respective unit of measure characteristic.
    why this difference btw DSO and Info cube can any one explain me in detail.
    Expecting your valuable suggestions.
    Thanks & Regards,
    Anjunath Naidu
    Edited by: AnjunathNaidu on Jan 18, 2012 4:05 PM

  • How to map promotional items

    Hi Experts,
    how to map promotional items with sales employee wise.
    and what is the difference bet sample and promotional items
    Regards,
    Amar

    I have no idea abt your process, but you can create new order reason as promotional items and assign to FOC order, you can create sales employee as customer and create FOC with customers ( sales employee).

  • How to map lattitude and longitude on a map in j2me.

    hi all,
    i am new to this forum and new to j2me.
    i am developing a pplication to track location of a gps mobile phone.
    i am using wtk2.5.1 jsr179 to develop it
    i know how to get location of a mobile phone but i cant find any method how to map those lat long coordinates on a map...
    please help me out if anyone knows about it..
    thanx

    Hi,
    I'm afraid that this is large problem... and it's not related to J2ME.
    The first question is whether you want to use some map provider and its API or you have a bitmap and you want to place a cursor of your position in the map.
    In the first case find an API to use (I don't know any). In the second case you have to understand what the GPS coordination mean, know projection type of the used map, then find and use the transformation formulas to transform GPS coordinates to map coordinates and vice versa.
    Regarding the GPS coordinates start here: http://en.wikipedia.org/wiki/World_Geodetic_System
    Regarding the projections - my map I tried to use in my application uses Lambert conic conformal projection http://en.wikipedia.org/wiki/Lambert_conformal_conic_projection
    but it may differ from map to map.
    Enjoy :-)
    Rada

  • How to map free goods scenario

    how to map free goods scenario?

    Hi
    Two types of free goods
    1.with excise free sample goods
    2.With out excise free sample goods
    with out excise free sample goods
    step1 create a purchase order and tick free goods column
    step2 GRN against free goods Po
    step3 No a/c entry Generated.
    with excise free sample goods
    step1 J1iex
    step2. Part1 created
    step3. Part11 created
    rds
    Kavi

  • How to Map messages having different namespaces

    Hi Experts,
    I am facing a problem while developing a simple process using process composer in CE 7.1 EHP1.
    The process has only one AutomatedActivity that invokes a WebService (MyWS.wsdl). The WebService operation takes an input as a BusinessObject defined in the same namespace as the web service i.e. http://samples.mycompany.com.
    I imported the MyWS.wsdl in the project. This has imported the service interface and the data types into the project.
    Then I defined a web service (StartProcessSI.wsdl) to start the process. This service has only one operation "StartProcess". This operation is supposed to take the same BusinessObject as input which will be passed to MyWS web service.
    But I was not able to use the data types from MyWS.wsdl in StartProcessSI.wsdl. Hence I defined the same data types with different namespace (http://bo.samples.mycompany.com) in StartProcessSI.wsdl.
    In the process, I have assigned the StartProcessSI service interface to the Start event and added a DataObject of type http://bo.samples.mycompany.com/BusinessObject in the process context. The OutputMapping of Start event is done since both the data types are from same namespace i.e. http://bo.samples.mycompany.com.
    Coming to the automated activity I am facing the mapping problem. The BusinessObject in the process context is from namespace http://bo.samples.mycompany.com/. Whereas the input parameter of the operation of the web service is from namesapce http://samples.mycompany.com/.
    The structure of the data types is exactly same. The only difference is the namespace. When I map these data types in the InputMapping or OutputMapping of the AutomatedActivity, it shows error (red cross on the mapping) "Incompatible expression type".
    How can I handle this?
    Thanks in advance.
    JK

    Thanks Christian.
    But can you please explain using a small example.
    Input message
    <person namespace="http://samples.mycompany.com">
      <name>Jon</name>
      <address>Some address</address>
    </person>
    The above message needs to be mapped to a person object having namespace http://bo.samples.mycompany.com.
    JK

  • How to map business process and enterprise service?

    Recently, I read some documents about ESA. I'm confusing about the relationship between business process and enterprise service. In other word, how to map the business process to enterprise service after the business process is analyzed? Is there any methodology/rule to define business process and wrap them into service in ESA?

    Hi Sherry,
    I like to add some of my thoughts about that discussion. From my point of view ESA is much more than just another BPM or Enterprise BPM. ESA is adresses six key areas and I think all of them are really needed:
    - <b>People Productivity</b> as the word itself describes...it's about portals and productivity.
    - <b>Embedded Analytics</b> has to integrate transactional and analytical content.
    - <b>Service Composition</b> is used for model-driven service composition and services orchestration.
    - <b>Service Enablement</b> is about a Enterprise Services Repository filled with business meaningful Enterprise Services and service patterns for enabled objects. Excactly this is where SAP has years of experiences.
    - <b>Business Process Platform</b> is about service enablement of all application platform objects and engines. This is the place where "BPM" for core business processes resits.
    - <b>Life-Cycle Management</b> has to cover the deployment, configuration, operation and change management for ESA based processes.
    Therefore the term "BPM" is located in serveral layers of an ESA approach. On the level of <u>Business Process Platform</u> BPM is providing the choreography for core business preocesses.
    At <u>Service Enablement</u> BPM needs to compose out of granular services (I would say "atomic" services)
    buiness meaningful services (here we have "molecular" services).
    The third level where BPM could be used is <u>Service Composition</u> because exactly this is the place
    where serveral Enterprise Services could be combined to a process representation.
    To come back to the discussion:
    1. The question should be how to indentify business meaningful services which could represent single process steps. ATP check, Credit card check, ... could be examples. In theory this service could be out-tasked, defined more flexible etc. This means that processes needs to be evaluated for Enterprise Service candidates. Afterwards you can check against SAP's Enterprise Services Repository for already existing Enterprise Services. The evalution for enterprise services candidates will be supported by the metodology mentioned by Kaj and David.
    2. I think domains in this context should be motivated by business and/or functional areas. Depending on the granularity. For example Order Fulfilment Services, Master Data Services, Search Services... These kind of serices can be combined again to services such as "Search of Master Data" (Search Service + Read Master Data Service) etc. or can be used to generate UI to be used in a ESA application.
    Your thoughts?
    Very best regards
    Wulff

  • How to map back charge process

    Hello friends,
    I need help to map below scenario in SAP:
    We have third party business process, where vendor V1 is supplying material to customer. When customer receives material; V1 invoices us and we make payments to V1.At this point PO is closed for vendor V1.
    Now if customer faces any problem with material, then we call local vendor V2 to repair or service the material. What ever charges come from local vendor is suppose to reimburse by vendor V1.
    Now how can we link V2 vendor invoice amount to V1 invoice. What will be the document flow? How to map back charge process . 
    Note:
    We have considered adding negative line items to the existing PO but understand this is not possible once payment has been issued and the PO is closed.
    We have considered creating a u201Creverse sales orderu201D but do not want to create a separate order or handle the vendor under a separate sold-to account (as a customer)
    We have considered a manual FI invoice but do not want to handle the vendor under a separate sold-to account (as a customer)
    Seeking valuable inputs from experts.
    Regards
    Ravi

    Hi Raghavendra
    Yes V2 exist in SAP, right now we create new purchase order to V2 for services for material at customer location, after his service we do payment to V2 and same amount is charged to V1.
    While charging V1 , we need to treat V1 as a customer( sold to party ) , which we donu2019t want , and direct clearing from FI is also not fusible as we again need to treat V1 as customer ( sold to party ) .
    Our requirement is to map using some credit memo or debit memo or any other documents.
    regards
    Ravi

Maybe you are looking for