UNICODE TEXT CONVERSION IN ORDERS05 IDOC

Hello All,
I have a text that is sent by the customer as following
Für verborgene Mängel besteht keine Untersuchungs- und Rügepflicht gem
when the IDOC is created it appears as the following
F#r verborgene M#ngel besteht keine Untersuchungs- und R#gepflicht gem
I tried using SET LOCALE LANGUAGE 'E' in the copy of EDI_DATA_INCOMING function module.. it dint work
Please help me to resolve this issue.

Thanks Dani.
I checked the T166A table and found that the following entries are missing for my cases: EKPO and EKKO for my ZNB PO type.
Shall I just put an entry for those two things in that table and this will allow me to get my texts in my ORDERS05 IDoc?
For point 2, as I am not an ABAP developper, I do not understand what to do. I can deal with customizing, but not with ABAP programming on that subject.
Thanks anyway at least for the first part of the answer.

Similar Messages

  • How to pass header/item text in inbound ORDERS05 IDoc

    Hi,
    I'm trying to create Sales Order from an inbound ORDERS05 idoc thru SE19.
    How do I pass the header text and item text to the Sales Order?
    What should be the value of E1EDKT1-TDOBJECT and E1EDKT1-TDOBNAME?
    An early response is highly appreciated.
    Regards,
    Gajendra

    Hi Gajendra,
    What is the significance of "TDOBJECT" and "TDNAME"?
    <b>TDOBJECT</b>: application object of the text
    The field is part of the text key. It contains the name of the text object to which the text is allocated. This object must be defined in table TTXOB.
    <b>TDNAME</b>: name of the text
    The field is part of the text key. It contains the name of the text module. This name may be up to 70 characters long. An internal structure of the text name is preset by the text object, but not interpreted by SAPscript.
    <b>TDID</b>: ID of the text
    The field is part of the text key. It contains the name of the text ID to which the text module belongs. The text ID must be defined in table TTXID together with the text object.
    <b>TDSPRAS</b>: language key of the text
    The field is part of the text key. It contains the language key of the language used to enter the text lines of the text module. The language key must be defined in table T002.
    Hope this will help.
    Regards,
    Ferry Lianto

  • Segment management in ORDERS05 IDOC.

    Hi there.
    I have two questions, one is very focused on text management in ORDERS05, the other one is more generally speaking.
    1 - Text management in ORDERS05 IDoc:
    I have texts in my purchase order that I fill in, and then generate my IDoc. When looking at IDoc detail through WE05 or WE02, my texts are not visible neither in E1EDKT1 nor E1EDPT1 segments. Basically, those segments are not even created in my IDoc. Why? Anything to do in PO and/or ALE customizing?
    2 - More general:
    I need to have, in my E1EDS01 segment, the total quantity I order in my PO. So, I need a segment with qualifier '004' in SUMID, then my quantities. Currently, I only have SUMID='002' and my total value amount. How can I define (or it is defined by the system) the type of information I have in my segments, or segments themselves?
    Please tell me if not clear at all.
    Thanks for your answers.
    Chris.

    Thanks Dani.
    I checked the T166A table and found that the following entries are missing for my cases: EKPO and EKKO for my ZNB PO type.
    Shall I just put an entry for those two things in that table and this will allow me to get my texts in my ORDERS05 IDoc?
    For point 2, as I am not an ABAP developper, I do not understand what to do. I can deal with customizing, but not with ABAP programming on that subject.
    Thanks anyway at least for the first part of the answer.

  • Orders05 IDoc Create/Change.

    Dear All,
    I am able to create the Outbound IDocs for create or change of purchase order . But I want to know
    how to create orders05 IDoc with only changed items not all the items.
    Example :  If I change line item 3 for any order ,then IDoc should have only one segment E1EDP01 for that item
    Thanks in Advance.

    Curtis,
    If I understand you're requirement correctly, you want to "Send all changed items on the ORDCHG. In addition to these, you want the item long text sent for all the items that haven't been changed".
    If this is true, I would do it in one of the following ways:
    1. Send all the data (like ORDERS) on an ORDCHG IDOC along with long texts and have the vendor compare each item and see which ones have changed. --> I know this is not a preferred option for all the clients but I have done this at one of the client who had the muscle to have his vendors comply to his needs.
    2. Change exit: EXIT_SAPLEINM_001. Pick up all the materials listed in UEKPO, go back to EKPO and get the remaining for that PO and populate long text field which would go into E1EDPT1/T2 segment and update those relevant fields in UEKPO and save it. The next form would automatically pick up these and fill up the IDOC. This way, you'll see E1EDP01 (and the segments beneath it) for all the materials but you just populate E1EDPT1/T2 and rest are blank. I might have oversimplified it because I didn't go in and check how the program flow would work but I'm positive this is a good way to start. The reason I would like to change EXIT_SAPLEINM_001 is that this is the place where the actual IDOC filling didn't start yet and all you have to do is feed into UEKPO so that the next perform will take care of the rest.
    Let me know if this works out for you. If you went through any alternative way then do educate me back
    Just a thought: You're question is different to the original thread here (although related). We're hijacking this thread. So I think it'll be better if you put it in a new one.

  • ORDERS05 IDOC to flat file - mapping question

    I have a requirement to convert an ORDERS05 IDOC to a "flat" structure for one of our vendors.
    When the IDOC has the following data, the mapping works well
    Input
    =====
    ORDERS05
       - E1EDP01
          POSEX        00010
          - E1EDPT1
              -E1EDPT2
                 TDLINE   line 1 text
      - E1EDP01
          POSEX        00020
          - E1EDPT1
              -E1EDPT2
                 TDLINE   line 2 text
    Output
    ======
    GWC
      - GWC08-RECORD
          GWC08-SEQNO      0010
          GWC08-TXT        line 1 text
      - GWC08-RECORD
          GWC08-SEQNO      0020
          GWC08-TXT        line 2 text
    However when the IDOC has the following data
    ORDERS05
      - E1EDP01
          POSEX        00010
      - E1EDP01
          POSEX        00020
          - E1EDPT1
              -E1EDPT2
                 TDLINE   line 2 text
    the mapping yields wrong results as below
    GWC
      - GWC08-RECORD
          GWC08-SEQNO      0010
          GWC08-TXT        line 2 text
    The vendor has a requirement that the GWC08-RECORD should only be sent if TDLINE exists in the IDOC - so that part works. However, Text on Line 2 is being associated with Line 1.
    If I am not mistaken, this has to do with the Input queues for POSEX and that for TDLINE having differing number of entries. However, I have no idea how to go about fixing this
    Appreciate any help on this
    thanks
    anil

    Hi,
    This is possible without UDF:
    Please see mapping below:
    For the node GWC08-RECORD
    TDLINE --> removeContext --> GWC08-RECORD
    For the node GWC08-SEQNO
    TDLINE (set context to E1EDP01) --> exists --> ifWithoutElse --> removeContext --> SplitByValue:EachValue --> GWC08-SEQNO
    POSEX ------------------------------------------>/
    For the node GWC08-TXT
    TDLINE (set context to E1EDP01) --> exists --> ifWithoutElse --> removeContext --> SplitByValue:EachValue --> GWC08-SEQNO
    TDLINE (set context to E1EDP01)----------------->/
    Hope this helps,
    Regards

  • UNICODE text

    Hi,
    Could anyone tell me how to bind UNICODE text and ANSI to SQL statement as parameters or result columns in Windows environment ? I mean to bind in the same statement one parameter as an UNICODE text and second one as an ANSI (multibyte) text.
    Thx

    Use the following code UTF and NLS
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <oci.h>
    static text username = (text ) "SCOTT";
    static text password = (text ) "TIGER";
    /* Define SQL statements to be used in program. */
    static text insert = (text ) "INSERT INTO nls_demo(myno, myname, mydesc)\
    VALUES (:myno, :myname, :mydesc)";
    static text maxemp = (text ) "SELECT NVL(MAX(myno), 0) FROM nls_demo";
    static text selemp = (text ) "SELECT myno, myname, mydesc FROM nls_demo";
    static OCIEnv *envhp;
    static OCIServer *srvhp;
    static OCIError *errhp;
    static OCISvcCtx *svchp;
    static OCIStmt stmthp0, stmthp1, stmthp2, stmthp3;
    static OCIDefine defnp0 = (OCIDefine ) 0;
    static OCIDefine defnp1 = (OCIDefine ) 0;
    static OCIDefine defnp2 = (OCIDefine ) 0;
    static OCIDefine defnp3 = (OCIDefine ) 0;
    static OCIDefine defnp4 = (OCIDefine ) 0;
    static OCIBind bnd1p = (OCIBind ) 0; /* the first bind handle */
    static OCIBind bnd2p = (OCIBind ) 0; /* the second bind handle */
    static OCIBind bnd3p = (OCIBind ) 0; /* the third bind handle */
    static sword status;
    #define MYBUFSIZE 4000
    #define MYLONGSIZE 4000
    static utext ubuf[MYBUFSIZE]; /* a buffer for unicode conversion */
    static char tbuf[MYBUFSIZE]; /* a buffer for text conversion */
    static void checkerr(OCIError *errhp, sword status);
    static void cleanup(void);
    /* Converting buffers from and to unicode */
    static size_t mytxt2uni();
    static size_t myuni2txt();
    /* ------- MAIN program ------- */
    int main(argc, argv)
    int argc;
    char *argv[];
    sword empno;
    text ename[40];
    sb4 enamelen = 40;
    utext mydesc[MYLONGSIZE];
    sb4 mydesclen = MYLONGSIZE;          
    sb2 ename_ind, mydesc_ind, empno_ind, ename_rlen, mydesc_rlen;
    utext *ename_u;
    size_t blen=0;
    int i;
    ub2 myucs2id = OCI_UCS2ID; /* Unicode character set ID */
    OCISession authp = (OCISession ) 0;
    /* Allocate space for the Unicode buffer */
    ename_u = (utext *) malloc((size_t) ((enamelen + 1) * sizeof(utext)));
    if (!ename_u)
    fprintf(stderr, "Cannot allocate memory\n");
    return 1;
    /* Set up the OCI environment */
    (void) OCIInitialize((ub4) OCI_DEFAULT, (dvoid *)0,
    (dvoid * (*)(dvoid *, size_t)) 0,
    (dvoid * (*)(dvoid *, dvoid *, size_t))0,
    (void (*)(dvoid *, dvoid *)) 0 );
    (void) OCIEnvInit( (OCIEnv **) &envhp, OCI_DEFAULT, (size_t) 0, (dvoid **) 0 );
    (void) OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &errhp, OCI_HTYPE_ERROR,
    (size_t) 0, (dvoid **) 0);
    /* server contexts */
    (void) OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &srvhp, OCI_HTYPE_SERVER,
    (size_t) 0, (dvoid **) 0);
    (void) OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &svchp, OCI_HTYPE_SVCCTX,
    (size_t) 0, (dvoid **) 0);
    (void) OCIServerAttach( srvhp, errhp, (text *)"", strlen(""), 0);
    /* set attribute server context in the service context */
    (void) OCIAttrSet( (dvoid *) svchp, OCI_HTYPE_SVCCTX, (dvoid *)srvhp, (ub4) 0,
    OCI_ATTR_SERVER, (OCIError *) errhp);
    (void) OCIHandleAlloc((dvoid *) envhp, (dvoid **)&authp, (ub4) OCI_HTYPE_SESSION,
              (size_t) 0, (dvoid **) 0);
    (void) OCIAttrSet((dvoid *) authp, (ub4) OCI_HTYPE_SESSION,
    (dvoid *) username, (ub4) strlen((char *)username),
    (ub4) OCI_ATTR_USERNAME, errhp);
    (void) OCIAttrSet((dvoid *) authp, (ub4) OCI_HTYPE_SESSION,
    (dvoid *) password, (ub4) strlen((char *)password),
    (ub4) OCI_ATTR_PASSWORD, errhp);
    checkerr(errhp, OCISessionBegin ( svchp, errhp, authp, OCI_CRED_RDBMS,
                   (ub4) OCI_DEFAULT));
    (void) OCIAttrSet((dvoid *) svchp, (ub4) OCI_HTYPE_SVCCTX,
    (dvoid *) authp, (ub4) 0,
    (ub4) OCI_ATTR_SESSION, errhp);
    checkerr(errhp, OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &stmthp0,
    OCI_HTYPE_STMT, (size_t) 0, (dvoid **) 0));
    checkerr(errhp, OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &stmthp1,
    OCI_HTYPE_STMT, (size_t) 0, (dvoid **) 0));
    checkerr(errhp, OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &stmthp2,
    OCI_HTYPE_STMT, (size_t) 0, (dvoid **) 0));
    checkerr(errhp, OCIHandleAlloc( (dvoid *) envhp, (dvoid **) &stmthp3,
    OCI_HTYPE_STMT, (size_t) 0, (dvoid **) 0));
    /* Retrieve the current maximum employee number */
    /* Prepare the statement */
    checkerr(errhp, OCIStmtPrepare(stmthp0, errhp, maxemp,
    strlen((const char *)maxemp),
    (ub4) OCI_NTV_SYNTAX, (ub4) OCI_DEFAULT));
    /* bind the input variable */
    checkerr(errhp, OCIDefineByPos(stmthp0, &defnp0, errhp, 1, (dvoid *) &empno,
    (sword) sizeof(sword), SQLT_INT, (dvoid *) 0, (ub2 *)0,
    (ub2 *)0, OCI_DEFAULT));
    /* execute and fetch */
    if (status = OCIStmtExecute(svchp, stmthp0, errhp, (ub4) 1, (ub4) 0,
    (CONST OCISnapshot *) NULL, (OCISnapshot *) NULL, OCI_DEFAULT))
    if (status == OCI_NO_DATA)
    empno = 10;
    else
    checkerr(errhp, status);
    cleanup();
    return OCI_ERROR;
    empno+=10;
    /* Insert new data */
    checkerr(errhp, OCIStmtPrepare(stmthp2, errhp, insert,
    strlen((const char*)insert),
    (ub4) OCI_NTV_SYNTAX, (ub4) OCI_DEFAULT));
    /* Bind the placeholders in the INSERT statement. */
    checkerr(errhp, OCIBindByName(stmthp2, &bnd1p, errhp,(text*)":MYNO", strlen(":MYNO"),
    (dvoid *) &empno,
    (sword) sizeof(empno), SQLT_INT, (dvoid *) &empno_ind,
    (ub2 *) 0, (ub2 *) 0, (ub4) 0, (ub4 *) 0,
    OCI_DEFAULT));
    strcpy((char*)ename, "Scott Tiger"); /* just a fixed name for the demo */
    /* Convert buffer to Unicode */
    mytxt2uni(envhp, ename_u, enamelen+1, ename, enamelen+1);
    /* --- Bind the input Unicode buffer for the NAME column --- */
    checkerr(errhp, OCIBindByName(stmthp2, &bnd2p, errhp,
    (text*)":MYNAME", strlen(":MYNAME"),
    (dvoid *) ename_u,
    (enamelen+1) * sizeof (utext), SQLT_STR, (dvoid *) 0,
    (ub2 *) 0, (ub2 *) 0, (ub4) 0, (ub4 *) 0,
    OCI_DEFAULT));
    /* Set the attribute for the buffer to be Unicode encoded */
    checkerr(errhp,
    OCIAttrSet(bnd2p, OCI_HTYPE_BIND, &myucs2id, 0, OCI_ATTR_CHARSET_ID, errhp));
    /* Set the culomn width on the server */
    checkerr(errhp,
    OCIAttrSet(bnd2p, OCI_HTYPE_BIND, &enamelen, 0, OCI_ATTR_MAXDATA_SIZE, errhp));
    /*--- Bind the long DESC column using Unicode buffer ---- */
    checkerr(errhp, OCIBindByName(stmthp2, &bnd3p, errhp,
    (text*)":MYDESC", strlen(":MYDESC"),
    (dvoid *) mydesc,
    MYLONGSIZE * sizeof(utext), SQLT_LNG, (dvoid *) 0,
    (ub2 *) 0, (ub2 *) 0, (ub4) 0, (ub4 *) 0,
    OCI_DEFAULT));
    checkerr(errhp,
    OCIAttrSet(bnd3p, OCI_HTYPE_BIND, &myucs2id, 0, OCI_ATTR_CHARSET_ID, errhp));
    checkerr(errhp,
    OCIAttrSet(bnd3p, OCI_HTYPE_BIND, &mydesclen, 0, OCI_ATTR_MAXDATA_SIZE, errhp));
    /* fill data into long column - for demo purpose some numbers */
    for (i=0; i < MYBUFSIZE-1; i++)
    tbuf[i] = (text)(i % 10 + (text)'0');
    tbuf[i] = (text)0;
    empno_ind = 0; /* Reset indicator */
    /* Convert long buffer to Unicode */
    blen = mytxt2uni(envhp, mydesc, MYLONGSIZE, tbuf, MYBUFSIZE);
    /* --- Finally execute and commit the statement ---- */
    checkerr(errhp, OCIStmtExecute(svchp, stmthp2, errhp, (ub4) 1, (ub4) 0,
    (CONST OCISnapshot *) NULL, (OCISnapshot *) NULL, OCI_DEFAULT));
    checkerr(errhp, OCITransCommit(svchp, errhp, 0));
    /* Selecting the data again */
    /* --- Prepare the select statement ------ */
    checkerr(errhp, OCIStmtPrepare(stmthp3, errhp,
    selemp, strlen((char *)selemp),
    (ub4) OCI_NTV_SYNTAX, (ub4) OCI_DEFAULT ));
    /* Define the output variable for the select-list. */
    checkerr(errhp, OCIDefineByPos(stmthp3, &defnp2, errhp, 1,
    (dvoid *) &empno, sizeof(empno), SQLT_INT,
         (dvoid *) 0, (ub2 *) 0, (ub2 *) 0, OCI_DEFAULT));
    checkerr(errhp, OCIDefineByPos(stmthp3, &defnp3, errhp, 2,
    (dvoid *) ename_u, (enamelen+1) * sizeof(utext), SQLT_STR,
         (dvoid *) &ename_ind, (ub2 *) &ename_rlen,
    (ub2 *) 0, OCI_DEFAULT));
    /* Set the output name buffer to be Unicode encoded */
    checkerr(errhp,
    OCIAttrSet(defnp3, OCI_HTYPE_DEFINE, &myucs2id, 0, OCI_ATTR_CHARSET_ID, errhp));
    checkerr(errhp, OCIDefineByPos(stmthp3, &defnp4, errhp, 3,
    (dvoid *) mydesc, MYLONGSIZE * sizeof(utext), SQLT_LNG,
         (dvoid *) &mydesc_ind, (ub2 *) &mydesc_rlen,
    (ub2 *) 0, OCI_DEFAULT));
    /* Set the output desc buffer to be Unicode encoded */
    checkerr(errhp,
    OCIAttrSet(defnp4, OCI_HTYPE_DEFINE, &myucs2id, 0, OCI_ATTR_CHARSET_ID, errhp));
    /* Execute the select command */
    checkerr(errhp, OCIStmtExecute(svchp, stmthp3, errhp, (ub4) 0, (ub4) 0,
    (CONST OCISnapshot *) NULL, (OCISnapshot *) NULL, OCI_DEFAULT));
    /* Fetch the data display status of indicator variables */
    do
    empno=0;
    status = OCIStmtFetch(stmthp3, errhp, 1, OCI_FETCH_NEXT, OCI_DEFAULT);
    if(status !=0 && status != 100)
    checkerr(errhp, status);
    if (status == OCI_SUCCESS)
    printf("Number %d selected with following status:\n", empno);
    printf(" indicator variables: MYNAME %5d, MYDESC %5d\n", ename_ind, mydesc_ind);
    printf(" length of data : MYNAME %5d, MYDESC %5d\n", ename_rlen, mydesc_rlen);
    } while (status==0);
    cleanup();
    /* Function checking for errors during an OCI call execution */
    void checkerr(errhp, status)
    OCIError *errhp;
    sword status;
    text errbuf[512];
    sb4 errcode = 0;
    switch (status)
    case OCI_SUCCESS:
    break;
    case OCI_SUCCESS_WITH_INFO:
    (void) printf("Error - OCI_SUCCESS_WITH_INFO\n");
    break;
    case OCI_NEED_DATA:
    (void) printf("Error - OCI_NEED_DATA\n");
    break;
    case OCI_NO_DATA:
    (void) printf("Error - OCI_NODATA\n");
    break;
    case OCI_ERROR:
    (void) OCIErrorGet((dvoid *)errhp, (ub4) 1, (text *) NULL, &errcode,
    errbuf, (ub4) sizeof(errbuf), OCI_HTYPE_ERROR);
    (void) printf("Error - %.*s\n", 512, errbuf);
    break;
    case OCI_INVALID_HANDLE:
    (void) printf("Error - OCI_INVALID_HANDLE\n");
    break;
    case OCI_STILL_EXECUTING:
    (void) printf("Error - OCI_STILL_EXECUTE\n");
    break;
    case OCI_CONTINUE:
    (void) printf("Error - OCI_CONTINUE\n");
    break;
    default:
    break;
    * Exit program with an exit code.
    void cleanup()
    if (stmthp2)
    checkerr(errhp, OCIHandleFree((dvoid *) stmthp2, OCI_HTYPE_STMT));
    if (stmthp1)
    checkerr(errhp, OCIHandleFree((dvoid *) stmthp1, OCI_HTYPE_STMT));
    if (errhp)
    (void) OCIServerDetach( srvhp, errhp, OCI_DEFAULT );
    if (srvhp)
    checkerr(errhp, OCIHandleFree((dvoid *) srvhp, OCI_HTYPE_SERVER));
    if (svchp)
    (void) OCIHandleFree((dvoid *) svchp, OCI_HTYPE_SVCCTX);
    if (errhp)
    (void) OCIHandleFree((dvoid *) errhp, OCI_HTYPE_ERROR);
    return;
    /* Convert a buffer to unicode using OCICharSetToUnicode function */
    size_t mytxt2uni(dvoid envhp, utext dst, size_t dstlen,
    CONST text * src, size_t srclen)
    size_t cconv; /* Number of characters converted */
    sword ret;
    if ((ret=OCICharSetToUnicode(envhp, dst, dstlen, src, srclen, &cconv))
    != OCI_SUCCESS)
    fprintf(stderr,"\nError in mytxtuni (ret = %d)\n", ret);
    exit(1);
    return cconv;
    /* Convert a unicode buffer to text using OCIUnicodeToCharSet */
    size_t myuni2txt(dvoid envhp, text dst, size_t dstlen,
    CONST utext * src, size_t srclen)
    size_t bconv;
    sword ret;
    if ((ret=OCIUnicodeToCharSet(envhp, dst, dstlen, src, srclen, &bconv))
    != OCI_SUCCESS)
    fprintf(stderr, "\nError in myuni2txt (ret = %d)\n", ret);
    exit(1);
    /* Check for usage of replacement character during conversion */
    if (OCICharSetConversionIsReplacementUsed((dvoid*)envhp))
    fprintf(stderr, "\nWarning: Replacement character used during conversion!\n");
    return bconv;
    }

  • Coverting txt file to orders05 IDOC

    Hi all,
    Want to convert a text file(normal flat text file) into an orders05 Idoc which in turn should be commited to an SAP sytem and could be viewable by calling the transaction VA03. 
    It was decided to write an ABAP report program for this.
    The txt file looks as follows.
    Each number on a row seperated by space or tab indicates
    plant,soldToparty,ShipToParty,orderreference,delivery date,itemnumber,quantity,ordertype,way of shipment in that order.
    0700 91485 96291      123456      24022010      000798757   3  OR   AU
    0700 91485 96291      123456      24022010      1060022568  3  OR   AU
    The above text file is saved in a directory.
    This file should be read and converted to an idoc by writing an ABAP program.
    Any ideas in this direction is greatly appreciated.
    Thanks
    K

    I have to write a report to do this.
    So in whichever system from which this report transaction is called  have to create a sales order in that system.
    It is my system,then.
    Which BAPI and how is it going to work.
    Please elaborate how to read the file and create an order ,if thats the case.
    Iam having the sap r/3 enterprise release.
    K

  • Can a Resource file (.fr) be of type "Unicode text document"?

    Dear All,
    I'm doing string localization in my plugin programs. I created a resource file (MyPlugIn2_arAE.fr) for defining arabic strings. When I saved this file, I selected the type as "Unicode Text Document". Becuase only if it is a Unicode Text Document my arabic strings are preoperly saved. If I selected the type as "Text document" and save the file, all my arabic strings became "????????" like that. Now the problem is, it's giving a compilation error. (This is because the resource file MyPlugIn2_arAE.fr is saved as "Unicode Text Document").
    Error looking for resource specification. Need 'resource' or 'type'.
    odfrc - Execution terminated! 
    How do I resolve this problem?
    Thanks.

    Hi,
    I tried compiling with CS3 SDK, it gave an error and some warnings. I copied the output below. But with CS4 SDK, it compiles fine. How do I resolve this?
    1>Compiling...
    1>VCPlugInHeaders.cpp
    1>c:\sdk\adobeindesign\cs3\source\public\includes\UnicodeSavvyString.h(261) : error C2220: warning treated as error - no 'object' file generated
    1>c:\sdk\adobeindesign\cs3\source\public\includes\UnicodeSavvyString.h(261) : warning C4267: 'argument' : conversion from 'size_t' to 'int32', possible loss of data
    1>c:\sdk\adobeindesign\cs3\source\public\includes\UnicodeSavvyString.h(268) : warning C4267: '=' : conversion from 'size_t' to 'int32', possible loss of data
    1>c:\sdk\adobeindesign\cs3\source\public\includes\UnicodeSavvyString.h(281) : warning C4267: 'argument' : conversion from 'size_t' to 'int32', possible loss of data
    1>c:\sdk\adobeindesign\cs3\source\public\includes\WideString.h(348) : warning C4267: 'argument' : conversion from 'size_t' to 'int32', possible loss of data
    1>c:\sdk\adobeindesign\cs3\source\public\includes\WideString.h(366) : warning C4267: 'return' : conversion from 'size_t' to 'int32', possible loss of data
    1>c:\sdk\adobeindesign\cs3\source\public\includes\WideString.h(536) : warning C4267: 'initializing' : conversion from 'size_t' to 'const int32', possible loss of data
    1> c:\sdk\adobeindesign\cs3\source\public\includes\WideString.h(477) : see reference to function template instantiation 'int32 Strip_If<std::binder1st<_Fn2>>(WideString &,T)' being compiled
    1> with
    1> [
    1> _Fn2=std::equal_to<WideString::value_type>,
    1> T=std::binder1st<std::equal_to<WideString::value_type>>
    1> ]
    1>c:\sdk\adobeindesign\cs3\source\public\includes\WideString.h(554) : warning C4267: 'return' : conversion from 'size_t' to 'int32', possible loss of data
    1>Build log was saved at "file://c:\MyProjects\MyPlugIn2\objR\MyPlugIn2\BuildLog.htm"
    1>MyPlugIn2 - 1 error(s), 7 warning(s)
    ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

  • ORDERS05 IDoc User Exit - Create Sales Order

    Greetings,
    I'm working at a client where they are using the ORDERS05 IDoc in conjunction with the Process code ORDE to create customer finished goods sales orders in a 46C system. When the IDoc segment E1EDP19 is qualified with "003" and the article's UPC/EAN is supplied in the material field and conversion of the UPC to material is executed during processing when the sales order type is "ZEDI" however this conversion is not executed with any other sales order type, so I suspect a user exit routine however I checked the usual suspects.
    MM06E001
    VEDB0001
    MCP20008
    MM06E001
    VEDA0001
    But not code for the UPC to material conversion.
    Any insight is alway appreciated and rewarded.
    Thanks!

    Joseph,
    Take a look in the function module EXIT_SAPLVEDA_001, see if there's an include there. We have an include there containing our Customisations, including for the E1EDP19 segment.
    Cheers, Paul.

  • Generate Unicode text file

    Hi All,
    I am trying to create a unicode text file using OPEN DATASET which is to be fed to MDM for further process. I tried using the follow statement but no use,
    OPEN DATASET p_afile FOR OUTPUT IN LEGACY TEXT MODE
    CODE PAGE '1100' IGNORING CONVERSION ERRORS.
    After generating a file I try to save it manually using excel and it gets converted without any issues. But the requirement is to generate a unicode txt file as like below in excel,
    Any leads?

    I even tried the usual way as below but not able to get the file,
    OPEN DATASET p_afile FOR APPENDING IN TEXT MODE
    ENCODING UTF-8.

  • Error while ORDERS05 IDoc transfer from R3 - PI - SNC

    Hi Friends,
    I am facing error in PI SXMB_MONI for ORDERS05 IDoc transfer from R3 - PI - SNC.
    I have done all the configuration setup in Integration Directory for the Scenario, I am able to successfully send the IDOC for PO from R3 to PI but faced the following Error in PI.
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Message Split According to Receiver List
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">PARTY_SERVICE</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      *<SAP:Stack>Party and service not defined</SAP:Stack>*
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Also I am unable to Configure Sender/Receiver ID in PI > SXMB_ADMIN > Configuration, as while defining Sender/Receiver  unable to add the Interface for Sender(ORDERS.ORDERS05)/Reciever(ReplenishmentOrderNotificatio_Out) although I am able to see the same in Integration Repository.
    Also In Main message(Part of the message) as shown below, I am able to see Vendor in PARTY Element of xml message for which I have created the PO
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Message Split According to Receiver List
      -->
    - <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SAP="http://sap.com/xi/XI/Message/30">
    - <SOAP:Header>
    - <SAP:Main xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" versionMajor="003" versionMinor="000" SOAP:mustUnderstand="1" wsu:Id="wsuid-main-92ABE13F5C59AB7FE10000000A1551F7">
      <SAP:MessageClass>ApplicationMessage</SAP:MessageClass>
      <SAP:ProcessingMode>asynchronous</SAP:ProcessingMode>
      <SAP:MessageId>0050568F-24A0-1DDD-B9F5-3F6DD541FF93</SAP:MessageId>
      <SAP:TimeSent>2009-01-21T10:55:20Z</SAP:TimeSent>
    - <SAP:Sender>
      <SAP:Service>SAPECC6</SAP:Service>
      <SAP:Interface namespace="urn:sap-com:document:sap:idoc:messages">ORDERS.ORDERS05</SAP:Interface>
      </SAP:Sender>
    - <SAP:Receiver>
      <SAP:Party agency="SAPECC6" scheme="ALE#LI#LF">0000000006</SAP:Party>
      <SAP:Service />
      <SAP:Interface namespace="urn:sap-com:document:sap:idoc:messages">ORDERS.ORDERS05</SAP:Interface>
      <SAP:Mapping notRequired="Y" />
      </SAP:Receiver>
    Please Suggest the steps needs to be done for resolving the Issue.
    Thanks all...
    Regards,
    Nitin
    Edited by: Nitin Patil on Jan 21, 2009 12:18 PM

    Hi Nitin,
       I completed the configuraiton but the PO came in PI successfully but stuck in PI with error
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="PLAINHTTP_ADAPTER">ATTRIBUTE_SERVER</SAP:Code>
      <SAP:P1>500</SAP:P1>
      <SAP:P2>Internal Server Error</SAP:P2>
      <SAP:P3>Error during parsing of SOAP header</SAP:P3>
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>HTTP server code 500 reason Internal Server Error explanation Error during parsing of SOAP header</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    can you please help what is the problem , I am not able to find out.
    Thanks,
    Menaga

  • Is there a way of  printing a text conversation

    can a text conversation be uploaded onto the computer and printed? so  you can see the times/dates etc?
    i've seen people saying to take screen shots and print as picture but im wanting to know if a long period of conversation can be printed
    thanks

    Do you have a Mac computer by any chance?

  • How to write a unicode text in pdf file

    Dear Friends,
    I am a beginner in acrobat pdf plug-in development. I was trying to write a unicode text (Tamil text) into pdf file.
    Using same api I am able to write english text in time-roman, areal etc fonts. But I am not able to write tamil texts.
    The code is as below:
            memset(&pdeFontAttrs, 0, sizeof(pdeFontAttrs));
            pdeFontAttrs.name = ASAtomFromString("Latha");
            pdeFontAttrs.type = ASAtomFromString("TrueType");
            pdeFont    = PDEFontCreateFromSysFont(                                        \
                            PDFindSysFont(&pdeFontAttrs, sizeof(pdeFontAttrs), 0),    \
                            kPDEFontCreateEmbedded);
            pdeText = PDETextCreate();
            PDETextAdd(pdeText, kPDETextRun, 0, (ASUInt8 *)buffer, _tcslen(buffer),
                                    pdeFont, &gState, sizeof(gState), NULL, 0, &textMatrix, NULL);
            PDEContentAddElem(pdeContent, kPDEAfterLast, (PDEElement)pdeText);
            PDPageSetPDEContent(pdPage, gExtensionID);  
            PDPageReleasePDEContent (pdPage, gExtensionID);
    KIndly assume that PDEGraphicsState and PDETextMatrix are set properly set, I am not pasting entire code to avoid complexity.
    Thank you,
    Safiq

    Dear lrosenth,
    I went through some codes/suggestions in internet and I found that I need to have cmap file and cid font file for the respective font since pdf doesn't support unicode fonts directly.
    Can you help me to know where can I get cmap file and cid font file for tamil language font Latha(TrueType) microsoft font.
    Regards,
    Safiq

  • Creating a Purchase Order using ORDERS05 Idoc

    Hi Experts,
    I need to create a purchase order using ORDERS05 Idoc, with the data I am using a sales order is gettig created but I need to create a PO insted of SO.
    Please let me know what is difference between a PO and SO while using ORDERS05. Also please let me know what are all the fields that needs to chaged in the Idoc.
    Thanks,
    Suma

    Hi,
       I'm looking at a similar problem, can we use ORDERS05 IDOC basic type to create a Purchase Order?
       What is the inbound processing FM?  I tried IDOC_INPUT_ORDRSP, but it seem to only allow changes to a PO, and not creation of a PO.
       For IDOC_INPUT_ORDERS FM this one seem to only create Sales Orders?
       Which inbound FM should i be using?
    Regards.

  • PO no of customer in ORDERS05 IDoc with 3rd party scenario

    Hello experts,
    we have the scenario where we are getting purchase orders from our customer (which is in the same system like we are). Then we create SO for the customer and a PO to the external vendor. The goods should be delivered directly to the customer.
    In that 3rd party scenario we will send our PO via ORDERS05 IDoc to the vendor. Once the vendor is shipping the goods, he sends us an ASN and we create a statistical GR.
    Now our target is to give our customer somehow the information, that the delivery shipped from the vendor will be based on his PO to us. Do you know a way how we can give his PO no. to the vendor in the SAP standard ORDERS05 IDoc? Otherwise, is there a standard process to send our customer also the information that we received the ASN from vendor and transfer this information (maybe also as an ASN) to the customer with his PO no., so he can create an inbound delivery already?
    Thanks.

    Follow this Procedure... it works....
    Procedure
    1. Review the number ranges that have been created: The number ranges for the business partner in the Best Practices are defined as follows:
    IMG u2192 Cross Application Components u2192 SAP Business Partner u2192 Business Partner u2192 Basic Settings u2192 Number Ranges and Groupings u2192 Define Number Ranges
    01: The Regular business partner uses this number range: 2100000000 to 2199999999 and 03: 7100000000 to 7199999999 is used in the setting above for the ship-to party. Both are internal number ranges.
    XX is the external number assignment used to create the SD reference customer.
    2. The account group DEBI must temporarily be assigned to this external number assignment for the creation of this business partner:
    IMG u2192 Financial Accounting u2192 Accounts Receivable and Accounts Payable u2192 Customer Accounts u2192 Master Data u2192 Preparations for creation customer master data u2192 Assign Number Ranges to Customer Account Groups:
    Set account group: DEBI to external number range XX for the Business Partner creation step.
    3. Create an SD customer:
    Call transaction XD01: Easy Access u2192 Logistics u2192 Sales and Distribution u2192 Master Data u2192 Business Partner u2192 Customer u2192 Create u2192 Complete
    u2022 Select account group: Customer (general)
    u2022 Enter the Customer key: MUST_ALL
    u2022 Enter company code (1000)
    u2022 Enter sales area as follows:
    u2022 Sales organization: 1000,
    u2022 Distribution channel: 01
    u2022 Division: 10.
    u2022 Select Continue.
    Assign MUST_ALL in Master data>bp>settings for creating standard customers.

Maybe you are looking for