Use of SAP license mechanism is no longer mandatory

Partner-developed add-ons are no longer required to use the SAP license mechanism.  Although the SAP license mechanism is still available to those partners who would like to use it, the use of the mechanism is no longer required.  Partners who wish to use their own license mechanism instead of SAPu2019s are welcome to do so.  Partners developing any add-on solution are strongly encouraged to apply for a namespace from SAP, which helps prevent conflicts between partner products.

Hello,
I am software developer working for a small company that uses SAP BO 2005A in the finance and sales department.
I recently discovered the SAP SDK installed on our machines (server and PC's), and after some research and looking at people's sample code here, I have successfully written a small Visual Basic application that could create Sales Orders automatically, saving the company time not having to do the manual entry.
Would anyone know if I would be breaking any SAP contract or agreement if I was to run my little application ?
Do I need to be accredited to use the SDK?
Much appreciated.
Ed Roman
Melbourne - Australia

Similar Messages

  • SAP licensing mechanism

    Hi everyone,
    I want to develop a license mechanism for my addon as like as SAP license (can assign license to specific user). Anyone knows how can I start or where can I find the guidence or any web site that explain about how to create license for .net application?
    Appreciate if you can give me the link or advice on how to create license like SAP license mechanism.

    Dear Mat
    In the SDN Business One page: SAP Business One - SAP Developer Network
    Click on the "SAP Business One eLearning" link (on the right side)
    Than click on the "Packaging and Licensing" link
    Than click on the "SAP Business One Licensing" link
    An eLearning presentation will be displayed.
    I hope it would be helpful.
    Regards,
    Miki

  • How to know whether SAP license has expired using SDK

    Hello ,
    How to get information whether the system SAP License has expired or not .So that if expired then the addon will not work .
    By using which function i cen get that information .
    Thanks,
    Amit

    Amit,
    If you are looking to find this information out via code ... you should review this blog ...
    /people/lisa.mulchinock/blog/2009/05/08/sap-business-one-license-api
    Other than via code, I believe you would get a warning when the user tried to log in that the license expired.
    Eddy

  • Why does BR*Tools return with the error, No Valid SAP license?

    We are using BRTools 640 on HPUX and Oracle 9.2  Now we use BRTools on the other systems where Oracle resides, but when they got installed on this new system it creates the error:  Invalid SAP license.
    There is no SAP installed on any of the systems.  I am coming into the middle of this and have sratched my head over it until I am now balder than I was before. 
    The ora<SID> user is there and so is the <SID>adm.  The directories are ok with the correct rights and permissions.  So what am I missing?  I know it has to be something that I am missing.  Any help out there?
    Thanks,
    David

    Hi Ravinder,
    No this did not resolve the issue.  Here is what happen. 
    Implemented note 586618 and then completed the semophore part.  That worked as is it should.  Then tired a simple BRARCHIVE and this is what I got:
    BR0002I BRARCHIVE 6.40 (36)
    BR0006I Start of offline redo log processing: adsweyuy.svd 2006-06-19 14.30.40
    BR0925I Public synonym SAP_SDBAH created successfully for table SAPBIX.SDBAH
    BR0925I Public synonym SAP_SDBAD created successfully for table SAPBIX.SDBAD
    BR0925I Public synonym SAP_MLICHECK created successfully for table SAPBIX.MLICHECK
    BR0602E No valid SAP license found - please contact SAP
    BR0280I BRARCHIVE time stamp: 2006-06-19 14.30.41
    BR0301W SQL error -980 at location BraDbLogOpen-5
    ORA-00980: synonym translation is no longer valid
    BR0324W Insertion of database log header failed
    BR0007I End of offline redo log processing: adsweyuy.svd 2006-06-19 14.30.41
    BR0280I BRARCHIVE time stamp: 2006-06-19 14.30.41
    BR0005I BRARCHIVE terminated with errors
    This is somewhat irritating because as you I though and you probably did also, note 584418 should have fixed it.
    I have searched the OSS, but to no avail..so if you have any suggestions it would be appreciated.  The really weird thing is it works on other systems.  I think something is just missing and I am just too blind right now to see it.
    Regards,
    David E. Dick

  • SAP license key error:  no valid license found:  cannot log into SAP GUI

    I deleted temp license from slicense on SM box, since I had already installed new digital license from SAP.  Well, later I tried to log in again and was locked out.  After some research, I found "sap license check failed" in the log files, java will not come up, and the hardware key has changed on me, so the valid license that was active before is not showing up now. 
    I applied for a new license with new hardware key and attempted to install from cmd prompt, using saplicense -install ifile=c:license.txt, but it gets an error.  I put a trace on it and appears it cannot read license file key.  I also tried to install another temp license, but that failed since no other previous valid license was found.  At this point, I'm thinking I need to manually insert the license key into the database, but not sure what table or exactly how.  SAP has not provided a solution yet.
    I believe the hardware key changed due to renaming the server (we took out a hyphen in name) and had also reinstalled afterwards.
    Has anyone else run into this issue?

    Yes, I wish it were that simple, but I cannot even bring up the logon screen.  SAP GUI returns a message, resource temporarily unavailable.  I looked in SAP MMC syslog and found several entries, "SAP-Basis System: No license found for hardware ID DLIC_HWIDKE"
    I tried to install temp license from cmd prompt, but it says refuses and says no old or expired license found.  I also tried to install the new license I applied for from SAP with new hardware key using saplicense -install ifile=license.txt and that failed as well. 
    For NW2004s, is it even possible to install a digital license using cmd prompt?
    Ben

  • JNI - How to use the error reporting mechanism?

    I've developed a C++ DLL which is loaded from a commercial Win32 application (not written by me) as a plug-in for external calculations. On its initialization the C++ DLL launches the Java VM via the JNI invocation interface. When the DLL functions are called by the application, they forward the calls to Java objects inside the Java VM, again via JNI invocation interface.
    This works well, but I have encountered a weird error.
    From Java I open a JFrame containing a JTextArea as small console for debug output messages. If I turn output to this debug console off (my printToConsole routine checks whether a boolean flag is set), the string concatenation operator may lead to a crash of the Java VM.
    For example, if in one of the Java functions called from the
    DLL via JNI invocation interface the following is the first statement,
    it leads to a crash of the Java VM and the application that loaded the C++ proxy DLL.
    String test=""+Math.random(); // String test not used later
    Interestingly, if I comment this statement out, the Java code works fine WITHOUT any crash. I've already thought about potential races and synchronization issues in my code, but I don't see where this is the case. And the string concatenation error fails as well, if I insert sleep() statements in front of it and at other places in the code. However, if I turn on log messages printed to my JFrame debug console (containing a JTextArea), the String concatenation works without problems.
    So maybe the JNI interface has a bug and affects the Java VM; I don't see where my JNI code is wrong.
    One problem is that I do not get any stdout output, as the C++ proxy DLL is loaded by the Windows application, even if I start the Windows application from the DOS command line (under Windows).
    Does anyone know how to use the error reporting mechanism?
    http://java.sun.com/j2se/1.4.2/docs/guide/vm/error-handling.html
    Is it possible that the JVM, when it crashes, writes debug information about the crash into a file instead of stdout/stderr?
    My C++ proxy DLL was compiled in debug mode, but the commercial application (which loaded the DLL) is very likely not.
    I do not know hot to find the reason why the String concatenation fails inside the Java function called from the C++ DLL via JNI.

    Yes, I've initially thought about errors in the C++ code too. But the C++ code is actually very simple and short. It doesn't allocate anything on the C++ side. It allocates a couple of ByteBuffers inside the Java VM however via JNI invocation interface calls of env->NewDirectByteBuffer(). The native memory regions accessed via the ByteBuffers are allocated not by my own C++ code, but by the program that calls my DLL (the program is Metastock).
    The interesting thing is that everything works fine if output to my debug console is enabled, which means that in the Java print routine getConsoleLoggingState() returns true and text is appended to the jTextArea.
    static synchronized void print(String str)
    { MetaStockMonitor mMon=getInstance();
    if ( mMon.getFileLoggingState() && mMon.logFileWriter!=null) {
    mMon.logFileWriter.print(str);
    mMon.logFileWriter.flush();
    if ( mMon.getConsoleLoggingState() ) {
    mMon.jTextArea1.append(str);
    Only if output to the JTextArea is turned off (ie. getConsoleLoggingState()==false), the crash happens when the FIRST statement in the Java routine called via JNI invocation interface is a (useless) String concatenation operation, as described above.
    String test=""+Math.random(); // String test not used later
    Moreover, the crash happens BEFORE the allocated ByteBuffer objects are accessed in the Java code. But again, if console output is turned on, it works stable. If console output is turned off, it works when the (useless) String concatenation operation is removed in the Java routine called from C++.
    I've already thought about potential races (regarding multiple threads), but this can be ruled out in my case. It almost appears as if the JVM can have problems when called by the invocation interface (I tested it with Java 1.4.2 b28).
    All the calls between C++ and Java go ALWAYS in the direction from C++ code to Java. Unfortunately, there is no special JRE version with extensive logging capabilities to facilitate debugging. And the problem is not easily reproducible either.
    JNIEnv* JNI_GetEnv()
    JNIEnv *env;
    cached_jvm->AttachCurrentThread((void**)&env,NULL);
    fprintf(logfile,"env=%i\n",env);
    fflush(logfile);
    return env;
    // function called by Metastock's MSX plug-in interface
    BOOL __stdcall createIndEngine (const MSXDataRec *a_psDataRec,
    const MSXDataInfoRecArgsArray *a_psDataInfoArgs,
    const MSXNumericArgsArray *a_psNumericArgs,
    const MSXStringArgsArray *a_psStringArgs,
    const MSXCustomArgsArray *a_psCustomArgs,
    MSXResultRec *a_psResultRec)
    a_psResultRec->psResultArray->iFirstValid=0;
    a_psResultRec->psResultArray->iLastValid=-1;
    jthrowable ex;
    jmethodID mid;
    JNIEnv* env=JNI_GetEnv();
    jobject chart=getChart(env, a_psDataRec);
    if ( chart==NULL) {
    return MSX_ERROR;
    jobject getChart (JNIEnv* env, const MSXDataRec *a_psDataRec)
    jthrowable ex;
    jmethodID mid;
    int closeFirstValid, closeLastValid;
    closeFirstValid=a_psDataRec->sClose.iFirstValid;
    closeLastValid=a_psDataRec->sClose.iLastValid;
    long firstDate, firstTime;
    if (closeFirstValid>=1 && closeFirstValid<=closeLastValid) {
    firstDate = a_psDataRec->psDate[closeFirstValid].lDate;
    firstTime = a_psDataRec->psDate[closeFirstValid].lTime;
    } else {
    firstDate=0;
    firstTime=0;
    jclass chartFactoryClass = env->FindClass("wschwendt/metastock/msx/ChartFactory");
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot find class ChartFactory\n");
    printSBufViaJava(sbuf);
    return NULL;
    mid = env->GetStaticMethodID(chartFactoryClass, "getInstance", "()Lwschwendt/metastock/msx/ChartFactory;");
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot find method ID for ChartFactory.getInstance()\n");
    printSBufViaJava(sbuf);
    return NULL;
    jobject chartFactory=env->CallStaticObjectMethod(chartFactoryClass, mid);
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Exception while calling ChartFactory.getInstance()");
    printSBufViaJava(sbuf);
    return NULL;
    mid = env->GetMethodID(chartFactoryClass, "getChartID", "(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;IIIIIII)F");
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot find method ID for ChartFactory.getChartID()\n");
    printSBufViaJava(sbuf);
    return NULL;
    jobject symbolBuf=env->NewDirectByteBuffer(a_psDataRec->pszSymbol, strlen(a_psDataRec->pszSymbol) );
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot allocate symbolBuf\n");
    printSBufViaJava(sbuf);
    return NULL;
    jobject securityNameBuf=env->NewDirectByteBuffer(a_psDataRec->pszSecurityName, strlen(a_psDataRec->pszSecurityName) );
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot allocate securityNameBuf\n");
    printSBufViaJava(sbuf);
    return NULL;
    jobject securityPathBuf=env->NewDirectByteBuffer(a_psDataRec->pszSecurityPath, strlen(a_psDataRec->pszSecurityPath) );
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot allocate securityPathBuf\n");
    printSBufViaJava(sbuf);
    return NULL;
    jobject securityOnlineSourceBuf=env->NewDirectByteBuffer(a_psDataRec->pszOnlineSource, strlen(a_psDataRec->pszOnlineSource) );
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Cannot allocate onlineSourceBuf\n");
    printSBufViaJava(sbuf);
    return NULL;
    // Java Function call leads to crash, if console output is turned off and
    // the first statement in the Java routine is a (useless) string concatenation.
    // Otherwise it works stable.
    jfloat chartID=env->CallFloatMethod(chartFactory, mid, securityNameBuf, symbolBuf,
    securityPathBuf, securityOnlineSourceBuf, (jint)(a_psDataRec->iPeriod),
    (jint)(a_psDataRec->iInterval), (jint)(a_psDataRec->iStartTime),
    (jint)(a_psDataRec->iEndTime), (jint)(a_psDataRec->iSymbolType),
    (jint)firstDate, (jint)firstTime );
    if (ex= env->ExceptionOccurred() ) {
    env->ExceptionDescribe();
    env->ExceptionClear();
    sprintf(sbuf, "DLL: Exception while calling ChartFactory.getChartID()");
    printSBufViaJava(sbuf);
    return NULL;

  • Read SAP table data outside of SAP, without a SAP license

    Hello all,
    I have been asked to allow people within my company to directly access vendor information, but of course they don't want to purchase a SAP license.
    Yes, yes, I know that directly reading from SAP tables at the Oracle database level is generally frowned upon.
    I can envision creating an external application that presents the user with a screen of searchable fields, uses these fields to create SQL for the oracle tables LFA1, LFB1, ADRC, and ADR6, and returns a report of vendors that match the selection criteria.  The report could have drill down capability to give additional detail per vendor  This application would be executed with a user that has read only table access to the aforementioned tables.
    I just started to use the Oracle tool SQL Developer for a project that has nothing to do with SAP and that gave me the idea I described in the previous paragraph.
    Is anyone doing something like this?  Or what other methods are being used to allow on demand access to SAP tables, without a SAP license . 
    We are using SAP Enterprise Edition  version 4.7and Basis 620.
    Thanks
    Bruce

    Hello,
    You can use an RFC to extract data from SAP.
    Depending on the language you can extract data, for example if it is on .NET, you can use the .Net SAP conector, and create a RFC function on SAP, that returns the data you need.
    To extract the data you will need a valid SAP user and password.
    Hope this helps
    Gabriel P.

  • SAP License Key configuration procedure in Web AS(J2EE)

    Hi,
    We installed Web AS 6.4 (J2ee). It is running on temporary license and going to expire in one week time. I applied for license key and got the permanent license key as a text file attachment through email. It is a simple text file containing the license key, system NR and etc. I saved that text file into my machine.
    I tried to configure that license file into Web AS using visual administrator.
    Server 0 --> Services --> Licensing Adapter --> Install License from file
    I selected the text file which was sent by SAP to my mail.
    It is giving error like
    License file C:\(license file name).txt contains an incorrect SAP license key: Header or empty line expected.
    License key(s) not completely installed.
    I don't know what to do now. I think we can do through this through cmd. But I don't know how to do that.
    Shall I delete the temporary license? Will the system allow me to enter the value manually.
    Can any one guide me on this?
    Thanks.

    Srikishan,
    I am getting error lilke this.
    D:\usr\sap\SID\SYS\exe\run>saplicense -install
    SAPLICENSE (Release 640) ERROR ***
        ERROR:   Can not set DbSl trace function
        DETAILS: DbSlControl(DBSL_CMD_IMP_FUNS_SET) failed with return code 20
        RC-INFO: error loading dynamic db-library - check environment for:
                 dbms_type = <db-type>  (e.g. ora)
                 DIR_LIBRARY = <path to db-dll>  (e.g. /usr/sap/SID/SYS/exe/run)
    Any idea about it?
    I set the system variable like
    dbms_type = mss
    DIR_LIBRARY = D:\usr\sap\SID\SYS\exe\run
    But still getting the error.
    Do I need to set dbms_type in environment variables? I don't know it's value. My db is MS SQL DB.
    Thanks.

  • In ECC6,how to use tcode se63 to translate short and long texts?

    In sap 4.6c, I know how to use tcode se63 to translate short and long text. However, in ecc6,when i use se63 to translate abap data element short  texts, i cannot save it .A error message appare: Could not save target text  Message no. SKTY000.
    Can any body help me?

    Hi,
    This is  because o source language must be different from target language.
    regards,
    Eduardo Marcelino

  • What software can I use on my new Mac that no longer supports "AppleWorks"? To easily transfer my database for mailmerge.

    What software can I use on my new Mac that no longer supports "AppleWorks"? To easily transfer my database for mailmerge.

    Two thoughts:
    (1)     It is possible that your Adobe software was the result of belonging to a now-discontinued Adobe Print Service Provider program where for a certain annual membership fee, print service providers were provided with (a) both a Windows and Macintosh license to the Adobe print-oriented software products (such as InDesign, Illustrator, Photoshop, and Acrobat) and (b) special direct product support as well as the ability to put your name on Adobe's website as a member of this program. The program ended over a year ago if I remember correctly.
    (2)     You may wish to contact Adobe Customer Support (not Technical Support) and see if they can track down any and all licenses associated with your company. If you have the names of the former employees who worked with this software, it would be helpful. Likewise, if you were a member of the discontinued Adobe Print Service Provider program, you may have some options for upgrading/updating the software you have.
    Unfortunately, you cannot get any more definitive information about your situation on these forums.
    Good luck.
              - Dov

  • DDL Statement (design view) of Tables used in SAP

    Hi,
    I am installing SAP 4.7 on oracle. unfortunately the some media is corrupt and as a result there are some missing tables and views. one of the missing table is DD02T.
    Can any one tell me from where i can get the DDL Statement (Table design) for Tables used in SAP as for my example i am missing Table DD02T.
    If i get this information, I can create those missing tables and this way will complete my installation.
    Regards,
    Abhishek

    You are pretty correct. command for creating table and views are prresent in SAPVIEW.STR.  I am getting problems in the installation of mainlny Data Dictionary tables like DD02T and DD02L etc.
    I tried to solve the problem by converting err to ok in one of the tsk file. it made the installationm process up but again it gives me the error during the SAP License Post Processing Step. as i think it needs some table or view which are not present. so how to get rid of??? do you know those table which are affected by the sap license step, so that i can create manualy.
    I am new to SAP and installing it for learing purpose.
    Regards,
    Abhsihek

  • SAP User Maintenance Against SAP License

    Hi Everyone,
    I would like to ask for an assistance regarding sap user. This is the scenario: The company has Employee A which was given sap userID with corresponding roles/profiles. Correct me if I'm wrong, the sap license depends also on the number of user in sap system. On this company, they reached the limit of their license according to number of user, for example 400 user. Suddenly,  Employee A resigned. New employee came, Employee B which will replace the job doing by Employee A. If we add another userID on sap system, the number of user will be 401 which exceeded the max user based on the license agreement. One way to solve this issue is to delete the userID as well as the profiles of Employee A and create new userID and profile of Employee B. Another way is to change the userID of Employee A and used its profile to Employee B. Is there available documentation from SAP supporting the above procedure?
    Regards,
    Ronald

    Licensing is based on active users. So if you lock user A, set its validity date to the day he/she left and take away the roles and profiles this user will not count for your licenses anymore sou you can safely create a new account for user B.
    Deleteing users can cause issues in workflow related proceesses and troubles searching in change documents. There have been some discussions about this in the Netweaver forum.

  • Install SAP license after 30 days expired

    Dear all,
    I forgot to install SAP license, and kinda let it slip. Today when I come to office I see that my SAP J2EE Server won't run, as my license has expired. Naturally, I cannot login to Visual Administrator. I have tried to install license via command prompt, but I receive the following error:
    C:\>saplicense -install
    SAPLICENSE (Release 700) ERROR ***
        ERROR:   Can not set DbSl trace function
        DETAILS: DbSlControl(DBSL_CMD_IMP_FUNS_SET) failed with return code 20
        RC-INFO: error loading dynamic db-library - check environment for:
                 dbms_type = <db-type>  (e.g. ora)
                 DIR_LIBRARY = <path to db-dll>  (e.g. /usr/sap/SID/SYS/exe/run)
    How do I go about fixing that error? I also know that there is SAP emergency user, just for this case, but I do not know what is userid/password, and where and how should I use it to install permanent license.
    FYI: My system is SAP NW 7.0 SP14 running on Oracle DB, all installed locally on Windows machine.
    Please assist.
    Thank you,
    Dmytro

    Thank you all!
    Please feel free to close this thread!
    Regards,
    Dmytro
    Edited by: Visiprise Guest on Mar 31, 2008 1:43 PM

  • A question about SAP licensing

    Hello:
    I need a clarification about the SAP licensing. First, let me give you an introduction.
    My company signed a license agreement in 1999 with SAP when buying SAP R/3 4.0B. Since then, and for cost reasons, there was not an agreement to migrate our licenses to the different schemas proposed by SAP along these years, i.e. mySAP or Business Suite. Currently, we are paying our annual maintenance since 1999.
    We are in SAP 4.6C now and are we are forced to migrate to ECC6.0 because 4.6C will not be supported in 2011.
    We are preparing the upgrade to ECC 6.0, but it seems that we should first "upgrade" our old licenses to Business Suite yes or yes, and pay for the difference; is that correct? So it means that our annual maintenace payment is not  useful to upgrade SAP 4.6C to ECC 6.0 without cost?
    Hope you can help me.
    Thanks.

    Hi,
    >So it means that our annual maintenace payment is not useful to upgrade SAP 4.6C to ECC 6.0 without cost?
    We had exactly the same case when upgrading from R/3 4.7 to ECC6. We had to re negotiate all the prices to go from a R/3 license to a Netweaver license.
    I even think this is the real reason of the name change to ECC (5 or 6)  instead of R/3 5.0 !
    "It's not a software upgrade; it is a change of software..."
    Regards,
    Olivier

  • Question about sap license audit,could you  help me

    how many users can my test system use ?   Does SAP concern the users I used in test system ?
    could you give me some information about that?  thanks a lot.

    Hi,
    We have hundreds of user on our production system, and several developer user and have been go live several years ago (SAP R/3) and proceed license audit annualy.
    Typically, license audit is calculated by the number of user on your production system and the number of developer user on your (development) system. Hence, the number of usual user (which is not developer user) on your test system should not be brought into SAP license audit calculation.
    to proceed, first you have to clasify contractual user type via SU01, and then proceed it using USMM transaction.
    hope it help you,
    rgds,
    Alfonsus Guritno

Maybe you are looking for