Creating a window through a DLL called through CLFN

Hi, sorry if this is a relatively simple problem but I've been unable to find proper results after a couple hours or so of searching.
My group is interacting wtih a DLL that requires a window to draw to. We tried drawing directly to a LabVIEW window (using the FindWindow function through the Windows API), however while that worked we were unable to save the drawn image (the Front panel-> export image invoke node wouldn't save the drawn image). 
So, what we did was write some C code and make a wrapper DLL that creates a window to draw to through the CreateWindow function, which we would then export to our main vi (less than ideal, but that's another problem). However, when we call up this wrapper DLL via the CLFN, it won't create the window.  Windows doesn't throw an error, it just won't instantiate the window at all and the function returns an error that the window was never created. The reason I'm posting this problem here instead of a general C++ forum is because we've tested out this wrapper DLL via a test project that imports the DLL and it works fine.
This is how I'm setting up the window. I pass the LabVIEW Window found via the FindWindow function in as hInst (sorry for the formatting, I tried the HTML <code> tag and the board doesn't seem to accept it):
int initializeWindow(HINSTANCE hInst)
    // Initialize global strings
    LoadString(hInst, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
    LoadString(hInst, IDC_WINDOW_CLASS, szWindowClass, MAX_LOADSTRING);
    MyRegisterClass(hInst);
    // Perform application initialization:
    if (!InitInstance (hInst, 1))
        return 0;
    return 1;
ATOM MyRegisterClass(HINSTANCE hInst)
    WNDCLASSEX wcex;
    wcex.cbSize = sizeof(WNDCLASSEX);
    wcex.style            = CS_HREDRAW | CS_VREDRAW | CS_BYTEALIGNCLIENT;
    wcex.lpfnWndProc    = WndProc;
    wcex.cbClsExtra        = 0;
    wcex.cbWndExtra        = 0;
    wcex.hInstance        = hInst;
    wcex.hIcon            = LoadIcon(hInst, MAKEINTRESOURCE(IDI_UVIEW));
    wcex.hCursor        = LoadCursor(NULL, IDC_ARROW);
    wcex.hbrBackground    = (HBRUSH)(COLOR_WINDOW+1);
    wcex.lpszMenuName    = MAKEINTRESOURCE(IDC_UVIEW);
    wcex.lpszClassName    = szWindowClass;
    wcex.hIconSm        = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
    return RegisterClassEx(&wcex);
BOOL InitInstance(HINSTANCE hInst, int nCmdShow)
   hwnd = CreateWindow(szWindowClass, szTitle, WS_VISIBLE | WS_DLGFRAME |  SS_BLACKRECT,
      0, 0, X_WINDOW_SIZE, Y_WINDOW_SIZE, NULL, NULL, hInst, NULL);
   if (hInst == NULL)
        MessageBox(hwnd, TEXT("Problem making instance"), TEXT("ERROR"),0);
        return FALSE;
   if (!hwnd)
      MessageBox(hwnd,TEXT("Problem making window"),TEXT("ERROR"),0);
      return FALSE;
   ShowWindow(hwnd, nCmdShow);
   UpdateWindow(hwnd);
   return TRUE;
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
 // Standard WndProc implementation.. probably not worth posting all the code unless necessary
Does anyone see an obvious problem? Or something I should try?
Thanks in advance!
Message Edited by wgerard on 05-16-2010 12:18 AM

I can be short about that. A Windows HINSTANCE is NOT a HWND by a long stretch. The first is a module handle and the second is ... well yes a window!
FindWindow() returns a HWND and you can use that as parent handle for another window, but you can not use it as HINSTANCE ever.
To get at the HINSTANCE for registering new window classes you will need to extract that somehow from the HWND, probably by something like GetWindowLongPtr(.., GWLP_HINSTANCE, ..) or something similar.
But you won't be able to retrieve your own resources from that instance, because it is the instance for the LabVIEW executable, not your DLL.
Message Edited by rolfk on 05-16-2010 10:31 AM
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions

Similar Messages

  • Problem: Socket connection is not creating in machine, through utility program (MFC Dll), on ListDisplay service port - 3334 (on separate machine), while we are able to telnet on same ListDisplay service port - 3334 from same issue machine on same time

    Problem: Socket
    connection is not creating in machine, through utility program (MFC Dll), on ListDisplay service port - 3334 (on separate machine), while we are able to telnet on same ListDisplay service port - 3334 from same issue machine on same time
    Environment: -
    OS:
    Windows XP SP2/7
    Code:
    VC 6.0
    Dll: MFC
    Problem Description: -
    We have written a utility program which create socket (Using windows standard method [MFC]), and then make connection with another service (List Display) running
    on port 3334 in different machine and retrieve the required list data. This program was working fine in almost all the machines.
    But, we have received a severe intermittent issue on two machines. Client is facing issue in displaying the list data from port 3334.
    Attempt: -
    First we tried to debug code, and we come to know that socket is not creating in utility program. So we tried to telnet on ListDisplay service port 3334 and we were surprised that we were able to telnet, then we opened some more
    telnet window on same port 3334 around (6 to 8) window, and each cmd connected properly. But we were not able to create socket from utility program.
    Problem is severe because issue is intermittent.
    We have tried all the way, but we are not able to figure it out, that what can be the exact problem and what are the conditions, when utility program will not
    connect with ListDisplay service on port 3334.
    Kindly assist to resolve this issue. For any help, we would be really thankful.

    Hi,
    According to your description, it seems that you have created an utility program which is making connection with another service port 3334, however, two clients are facing issue in display the data list from port 3334.
    Port: 3334/TCP
    3334/TCP - Known port assignments (1 record found)
    Service
    Details
    Source
    directv-web
    Direct TV Webcasting
    IANA
    Since the port 3334 is used by directv-web service, I'd like to suggest check this service it is working well on the problematic clients.
    1. The client can be resolved in DNS well? Please run "nslookup" in the prompt command.
    2. Is there any 3rd party application interrupting? Do test in clean boot.
    2. Strongly suggest you run process monitor tool to analysis it.
    I am looking forward to your reply if you have any updated on your side.
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

  • HT1461 I created a partition and installed Windows through bootcamp. But I need to increase my partition size due to me needing more space on the windows side. Can I do this with bootcamp, and how do I do it?

    I created a partition and installed Windows through bootcamp. But I need to increase my partition size due to me needing more space on the windows side. Can I do this with bootcamp, and how do I do it?

    Welcome to Apple Communities
    You can delete the partition in Boot Camp Assistant or use Camptune to modify it

  • How do I create a fault-tolerant DLL call from LV?

    I've created an .exe from a VI that calls a DLL, when that DLL crashes,
    it crashes the whole application.  This DLL is too complicated to
    completely debug and it, in turn calls DLLs I have no control
    over.  It crashes approximately once every 100,000 iterations.
    How do I make a DLL call fault-tolerent?
    Attachments:
    crash.gif ‏19 KB

    I might not have been very clear in my answer - this isn't a feature that CAN be added to LabVIEW...the DLL threw an unhandled exception across a DLL interface - which pretty much means a system exception (code shouldn't be throwing language exceptions across DLL boundaries as they are language specific). This means that something went very wrong with the code and there is a good chance that the process space has been corrupted. And from my own debugging experience, if it's only crashing 1 time out of 100,000, that doesn't mean it isn't corrupting memory or otherwise causing problems...it was just the time it was caught.
    Considering this, the Call Library Node already is fault tolerant - we catch the exception and report it to the user. You have a valid position that we should simply return this as an error. It's also a valid position that it would be a road paved with good intentions. All you need to do is remember what life was like in Windows 3.1 - where one process could silently corrupt another - to realize the amount of untraceable errors that could occur. Yes, the error out value should be handled by the user, but when an application of 100's or 1000's of VIs crashes seemingly at random because someone didn't, you can see the problem.
    I will say I like the idea of a separate memory space. It is unfortunate that Windows only offers that through creating a separate process, but it is a neat idea. I worked in the VXI/VME world for a while, which does have multiple address spaces.
    BTW - using signal handlers to catch exceptions is unfortunately not a 100% solution...signals are a partial port of a Unix concept in Windows. You would be best to use SEH around the call (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccelng/htm/key_s-z_4.asp). If the DLL is already a C++ DLL, then you can use the global catch of C++ instead
    int err = 0;
    try {
    } catch(...) {
       err = -1;
    Again, you still are at risk of a corrupted process, but this allows you to avoid our handling of it.
    Having spent years writing and (god help me) debugging device drivers, I love this topic. If you want to talk more about it and various options, feel free to shoot me an email at [email protected].
    Brian Tyler
    http://detritus.blogs.com/lycangeek

  • Can we create purchase order through report programming?

    hi experts.....
    can we create purchase order through report programming?If yes plz give me the thread details?

    Hi,
    Use this code in a program by using a BAPI function module
    Anothe rway is using classical/ALV report using call transaction from a report for changing the PO
    loop at i_header.
        header-ref_1         = i_header-legacy.
        headerx-ref_1        = c_x.
        header-doc_type      = i_header-bsart.
        headerx-doc_type     = c_x.
        header-comp_code     = i_header-bukrs.
        headerx-comp_code    = c_x.
        header-purch_org     = i_header-ekorg.
        headerx-purch_org    = c_x.
        header-pur_group     = i_header-ekgrp.
        headerx-pur_group    = c_x.
        header-vendor        = i_header-lifnr.
        headerx-vendor       = c_x.
        concatenate i_header-bedat+4(4)
                    i_header-bedat+0(2)
                    i_header-bedat+2(2)
                    into header-doc_date.
        headerx-doc_date     = c_x.
        header-created_by    = i_header-ernam.
        headerx-created_by   = c_x.
        header-currency      = i_header-waers.
        headerx-currency     = c_x.
        concatenate i_header-kdatb+4(4)
                    i_header-kdatb+0(2)
                    i_header-kdatb+2(2)
                    into header-vper_start.
        headerx-vper_start   = c_x.
        loop at i_items where legacy = i_header-legacy.
          item-po_item            =  i_items-ebelp.
          itemx-po_item           =  i_items-ebelp.
          itemx-po_itemx          =  c_x.
          if i_header-bsart = 'NB'.
            item-material            =  i_items-ematn.
            itemx-material           =  c_x.
            schedule-quantity        =  i_items-menge * 1000.
            schedulex-quantity       =  c_x.
          else.
            item-short_text          = i_items-ematn.
            itemx-short_text         = c_x.
            item-matl_group          = '1000'.
            itemx-matl_group         = c_x.
            schedule-quantity        =  '1'.
            schedulex-quantity       =  c_x.
          endif.
          item-plant               =  i_items-werks.
          itemx-plant              =  c_x.
          schedule-po_item         = i_items-ebelp.
          schedule-sched_line      = '1'.
          schedulex-po_item        = i_items-ebelp.
          schedulex-sched_line     = '1'.
          schedulex-po_itemx       = c_x.
          schedulex-sched_linex    = c_x.
          concatenate  i_items-eildt+0(2)
                       i_items-eildt+2(2)
                       i_items-eildt+4(4)
                       into schedule-delivery_date.
          schedulex-delivery_date  =  c_x.
          item-price_unit          =  i_items-peinh * 100.
          itemx-price_unit         =  c_x.
          item-tax_code            =  i_items-mwskz.
          itemx-tax_code           =  c_x.
          item-shipping            =  i_items-evers.
          itemx-shipping           =  c_x.
          account-po_item          = i_items-ebelp.
          accountx-po_item         = i_items-ebelp.
          accountx-po_itemx        = c_x.
          if i_header-bsart = 'FO'.
            item-pckg_no  = sy-tabix.
            itemx-pckg_no = 'X'.
            limits-pckg_no        = sy-tabix.
            limits-limit          = i_items-overalllimit.
            limits-exp_value      = i_items-expectedoverall.
            posrvaccessvalues-pckg_no    = sy-tabix.
            posrvaccessvalues-line_no    = '0'.
            posrvaccessvalues-serno_line = '00'.
            posrvaccessvalues-percentage = '100.0'.
            posrvaccessvalues-serial_no  = '01'.
            account-serial_no     = '1'.
            accountx-serial_no    = '1'.
            accountx-serial_nox   = c_x.
            account-quantity  = '1'.
            accountx-quantity = c_x.
            call function 'CONVERSION_EXIT_ALPHA_INPUT'
              exporting
                input  = i_items-kostl
              importing
                output = account-costcenter.
            accountx-costcenter   = c_x.
            call function 'CONVERSION_EXIT_ALPHA_INPUT'
              exporting
                input  = i_items-sakto
              importing
                output = account-gl_account.
            accountx-gl_account   = c_x.
            item-acctasscat       = i_items-knttp.
            itemx-acctasscat      = c_x.
            item-item_cat         = i_items-epstp.
            itemx-item_cat        = c_x.
          endif.
          append:item,itemx,schedule,schedulex,account,accountx,limits,posrvaccessvalues.
          clear :item,itemx,schedule,schedulex,account,accountx,limits,posrvaccessvalues.
        endloop.
        call function 'BAPI_PO_CREATE1'
          exporting
            poheader                     = header
            poheaderx                    = headerx
    *   POADDRVENDOR                 =
    *   TESTRUN                      =
    *   MEMORY_UNCOMPLETE            =
    *   MEMORY_COMPLETE              =
    *   POEXPIMPHEADER               =
    *   POEXPIMPHEADERX              =
    *   VERSIONS                     =
    *   NO_MESSAGING                 =
    *   NO_MESSAGE_REQ               =
    *   NO_AUTHORITY                 =
    *   NO_PRICE_FROM_PO             =
            importing
            exppurchaseorder             = ponumber
    *   EXPHEADER                    =
    *   EXPPOEXPIMPHEADER            =
            tables
            return                       = return
            poitem                       = item
            poitemx                      = itemx
    *   POADDRDELIVERY               =
            poschedule                   = schedule
            poschedulex                  = schedulex
            poaccount                    = account
    *   POACCOUNTPROFITSEGMENT       =
            poaccountx                   = accountx
    *   POCONDHEADER                 =
    *   POCONDHEADERX                =
    *   POCOND                       =
    *   POCONDX                      =
            polimits                     = limits
    *   POCONTRACTLIMITS             =
    *   POSERVICES                   =
       posrvaccessvalues            = posrvaccessvalues.
    *   POSERVICESTEXT               =
    *   EXTENSIONIN                  =
    *   EXTENSIONOUT                 =
    *   POEXPIMPITEM                 =
    *   POEXPIMPITEMX                =
    *   POTEXTHEADER                 =
    *   POTEXTITEM                   =
    *   ALLVERSIONS                  =
    *   POPARTNER                    =
        if ponumber eq space.
          loop at return where type = 'E'.
            clear buffer.
            move-corresponding return to e_return.
            concatenate i_header-legacy e_return into buffer.
            transfer buffer to p2_file.
          endloop.
          move-corresponding i_header to i_eheader.
          transfer i_eheader to p3_file.
          loop at i_items where legacy = i_header-legacy.
            move-corresponding i_items to i_eitems.
            transfer i_eitems to p4_file.
          endloop.
        else.
          commit work and wait.
        endif.
        clear:ponumber,header,headerx,item,itemx,account,accountx,limits,return,schedule,schedulex,posrvaccessvalues.
        refresh:item,itemx,account,accountx,limits,return,schedule,schedulex,posrvaccessvalues.
      endloop.
      close dataset p2_file.
      close dataset p3_file.
      close dataset p4_file.
    Regards
    Krishna

  • Error while creating Supplier Contact through API

    Hi,
    I am not able to create supplier contact through an API: ap_vendor_pub_pkg.create_vendor_contact
    The return status (x_return_status)from the API is 'U' and x_msg_data is 'FND'.
    Please help with your suggestions !
    Thanks,
    Sambit

    Hi Hussein,
    Yes the only meesage that is coming in the pot parameter of the API is: 'FND'
    The code snippet is as below:
    ===================================================
    fnd_global.apps_initialize(user_id => v_user_id,
    resp_id => v_resp_id,
    resp_appl_id => v_application_id);
    mo_global.set_policy_context(
    'S', v_org_id);
    v_message := v_message || chr(13) || 'Assigning values for the api ';
    v_vendor_contact_rec_type.vendor_site_id := v_vendor_site_id;
    v_vendor_contact_rec_type.vendor_id := v_vendor_id;
    v_vendor_contact_rec_type.person_first_name := v_first_name;
    v_vendor_contact_rec_type.person_last_name := v_last_name;
    v_vendor_contact_rec_type.email_address := '[email protected]';
    v_vendor_contact_rec_type.org_id := v_org_id;
    v_message := v_message || chr(13) ||
    'Before calling AP_VENDOR_PUB_PKG.CREATE_VENDOR_CONTACT api ';
    BEGIN
    ap_vendor_pub_pkg.create_vendor_contact(p_api_version => v_api_version,
    p_init_msg_list => fnd_api.g_false,
    p_commit => fnd_api.g_false,
    p_validation_level => fnd_api.g_valid_level_full,
    x_return_status => v_return_status,
    x_msg_count => v_msg_count,
    x_msg_data => v_msg_data,
    p_vendor_contact_rec => v_vendor_contact_rec_type,
    x_vendor_contact_id => v_vendor_contact_id,
    x_per_party_id => v_per_party_id,
    x_rel_party_id => v_rel_party_id,
    x_rel_id => v_rel_id,
    x_org_contact_id => v_org_contact_id,
    x_party_site_id => v_party_site_id);
    v_message := v_message || chr(13) ||
    'After calling AP_VENDOR_PUB_PKG.CREATE_VENDOR_CONTACT api: '||v_msg_data;
    =========================================================================
    Output: v_msg_data= FND
    Thanks,
    Sambit

  • Problem in creating Purchase order through Idoc

    Hi ABAPers,
    I am trying to post PO document through WE19 t-code using inbound function module BAPI_IDOC_INPUT1 which is calling BAPI_PO_CREATE1 internally.And i am getting below error messages.
    1. Characteristic  does not exist in operating concern AC01
    2. This function only possible for subcontracting items
    3. No instance of object type PurchaseOrder has been created. External reference
    passing data to IDOC:PORDCR102
    Header Segment : E1BPMEPOHEADER and E1BPMEPOHEADERX
    company code    0814
    doc_type            NB
    vendor                0000400001
    poprg-                EPRO
    pgroup               U01
    Item Segment : E1BPMEPOITEM and E1BPMEPOITEMX
    Item                  00010
    material             000000000000000263
    plant                 0374
    Qty                   22.000
    Delivery Segment E1BPMEPOSCHEDULE and E1BPMEPOSCHEDULEX
    Item                  00010
    Schedule line     0001
    delivery date      01.12.2008
    Qty                   22.000
    Note: i am able to create PO successfully, through SE37 by using FM BAPI_PO_CREATE1  with given above data.
    Please confirm me, what else i need to pass to post PO through WE19 t-code using inbound function module BAPI_IDOC_INPUT1.
    Please reply me ASAP.
    Thanks and Regards,
    Sekhar Raju.

    must be data format issue. when you use Function_module/BAPI from SAP GUI, convertion exit is applied automatically. hence data is converted to proper format & submited.

  • Opening a word file in MS Office Word software window through Java code

    I want to open a word file in MS Office Word software window through Java code.
    Is it possible ? If possible then please let me now how can I do it.
    Bhoopender

    Thanks for replying.
    I tried the following code -
    public class OpenFileWithItsExt
         public static void main(String[] args) throws java.io.IOException
              Runtime.getRuntime().exec("a.doc");
    and it gets compiled successfully, but on running outputs as -
    Exception in thread "main" java.io.IOException: CreateProcess: a.doc error=193
    at java.lang.Win32Process.create(Native Method)
    at java.lang.Win32Process.<init>(Win32Process.java:66)
    at java.lang.Runtime.execInternal(Native Method)
    at java.lang.Runtime.exec(Runtime.java:566)
    at java.lang.Runtime.exec(Runtime.java:428)
    at java.lang.Runtime.exec(Runtime.java:364)
    at java.lang.Runtime.exec(Runtime.java:326)
    at OpenFileWithItsExt.main(OpenFileWithItsExt.java:5)
    My file is in the pesent working directoty.
    Please solve my problem.
    Thanks

  • Creating search help through reports

    Hello experts,
    Is there a method so that I can create search help through reports?
    Thanks,
    Mohit.

    hi,
    we can create F4 help through report and also we can create Input Help from the ABAP Dictionary  .
    please check this link for Input Help from the ABAP Dictionary  .
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/dbaa5435c111d1829f0000e829fbfe/content.htm
    and for F4 help in reports you can use some function modules:
    select-options :                 so_selgp FOR t458a-selgp  /
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_selgp-low .
      REFRESH gt_auskt[].
      here insert select query to fill your internal table .
      IF so_selgp[] IS NOT INITIAL.
        DELETE gt_t458a1  WHERE selgp NOT IN so_selgp[].
      ENDIF.
      SELECT aussl auslt FROM t458b INTO CORRESPONDING FIELDS OF  TABLE gt_t458b WHERE spras = 'E'.
    CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
        DDIC_STRUCTURE         = ' '
          retfield               = 'SELGP'
        PVALKEY                = ' '
         dynpprog               = 'ZPPGL_MRP_LIST '
         dynpnr                 = '1000'
         dynprofield            = 'SO_SELGP'
         value_org              = 'S'
      IMPORTING
        USER_RESET             =
        TABLES
          value_tab              = gt_auskt   " internal table.
      EXCEPTIONS
        PARAMETER_ERROR        = 1
        NO_VALUES_FOUND        = 2
        OTHERS                 = 3

  • Displaying all application windows through Hot Corners is no longer working.

    I have my MacBook Pro and my iMac setup to display APPLICATION WINDOWS through the upper right HOT CORNER.   It is no longer working on my iMac.  Instead, the system only displays the top/recent used window.  The display separates and shows the most recent window floating, but, no longer does it arrange windows of each application on the desktop.  There are no other options, it's either set in HOT CORNERS or not.   What changed?   It still works on my MacBook.  Version update = 10.10.2 (14C1514)

    Please read this whole message before doing anything.
    This procedure is a test, not a solution. Don’t be disappointed when you find that nothing has changed after you complete it.
    Step 1
    The purpose of this step is to determine whether the problem is localized to your user account.
    Enable guest logins* and log in as Guest. Don't use the Safari-only “Guest User” login created by “Find My Mac.”
    While logged in as Guest, you won’t have access to any of your documents or settings. Applications will behave as if you were running them for the first time. Don’t be alarmed by this behavior; it’s normal. If you need any passwords or other personal data in order to complete the test, memorize, print, or write them down before you begin.
    Test while logged in as Guest. Same problem?
    After testing, log out of the guest account and, in your own account, disable it if you wish. Any files you created in the guest account will be deleted automatically when you log out of it.
    *Note: If you’ve activated “Find My Mac” or FileVault, then you can’t enable the Guest account. The “Guest User” login created by “Find My Mac” is not the same. Create a new account in which to test, and delete it, including its home folder, after testing.
    Step 2
    The purpose of this step is to determine whether the problem is caused by third-party system modifications that load automatically at startup or login, by a peripheral device, by a font conflict, or by corruption of the file system or of certain system caches.
    Please take this step regardless of the results of Step 1.
    Disconnect all wired peripherals except those needed for the test, and remove all aftermarket expansion cards, if applicable. Start up in safe mode and log in to the account with the problem. You must hold down the shift key twice: once when you turn on the computer, and again when you log in.
    Note: If FileVault is enabled in OS X 10.9 or earlier, or if a firmware password is set, or if the startup volume is a software RAID, you can’t do this. Ask for further instructions.
    Safe mode is much slower to start up and run than normal, with limited graphics performance, and some things won’t work at all, including sound output and Wi-Fi on certain models. The next normal startup may also be somewhat slow.
    The login screen appears even if you usually log in automatically. You must know your login password in order to log in. If you’ve forgotten the password, you will need to reset it before you begin.
    Test while in safe mode. Same problem?
    After testing, restart as usual (not in safe mode) and verify that you still have the problem. Post the results of Steps 1 and 2.

  • Can Not Create Serviceable Item Through DI API

    Hi Experts,
    My Client is using SAP 8.81 PL0 ,I am creating Serviceable Item through DI API, using following code
    oItems = (SAPbobsCOM.Items)SBOAddOn.SBOCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oItems);
    oItems.ItemClass = SAPbobsCOM.ItemClassEnum.itcService
    When I am going to Add it throw the msg ,ServiceCat is blank
    In DI object I am not able to find the service category kindly help me out.
    Thanks
    Edited by: Anup Kharwar on Feb 21, 2012 5:40 AM

    Hi,
    The SDK helpfile has this to say about the itemClass property:
    SDK helpfile:
    Remarks
    The ItemClass property is applicable for cluster B (country-specific for Brazil only).
    For example in the Finnish localization we do not have a field in the Item Master Data window for ItemClass. We do have the field ItemType
    Does your localization have a field for itemClass anywhere in the B1 client ?
    Regards,
    Johan

  • How to Turn On/Off Airplane mode in windows through powershell script

    I want to turn on and off Airplane mode through powershell script, any way for this?
    I know that there are some exe files that can be used, but still I want to do this from powershell script.

    Hi,
    According to your description, I would like to share the link with you:
    Airplane Mode On or Off Shortcuts - Create in Windows 8
    http://www.eightforums.com/tutorials/24541-airplane-mode-off-shortcuts-create-windows-8-a.html
    If you want to the detail of the script, I suggest to post the question on Script Center forum for further help.
    Script Center forum:
    http://social.technet.microsoft.com/Forums/scriptcenter/en-US/home
    Note: Microsoft provides third-party contact information to help you find technical support. This contact information may change without notice. Microsoft does not guarantee the accuracy of this third-party contact information.
    Regards,
    Kelvin_Hsu
    TechNet Community Support

  • How to close parent window when we use call method l_window_manager- create

    hi...
    how to close parent window when we use call method l_window_manager->create_external_window
    thank you.

    hi
    good
    go through this link,hope this ll help you to solve your problem
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/63a47dd9-0b01-0010-3d8e-de27242bf011
    thanks
    mrutyun^

  • Is there a way to create QR codes through Enhanced Datamerge in color rather than black?

    Trying to find a way to create QR codes through the data merge feature in a color other than black. The only way I know to attempt it is to try to give the placeholder a color attribute, but no matter what I try the QR codes generated come in as black. Wondering if there is a way to color them, like you can when you just generate an individual QR code.

    aggieweather,
    See the following post. I think should help out. Thanks!
    Chris C
    Applications Engineering
    National Instruments
    Chris Cilino
    National Instruments
    LabVIEW Product Marketing Manager
    Certified LabVIEW Architect

  • Geting error while creating a dir through CREATE DIRECTORY command

    Hi Gurus,
    When I'm trying to create a dir through this command with logged in as SYS
    CREATE DIRECTORY pump_dir AS 'd:\temp\pump_dir';
    I'm getting the error
    Error starting at line 1 in command:
    CREATE DIRECTORY pump_dir AS 'd:\temp\pump_dir'
    Error at Command Line:1 Column:18
    Error report:
    SQL Error: ORA-00955: name is already used by an existing object
    00955. 00000 - "name is already used by an existing object"
    Any ideas how I can create a dir and grant access to a different user.
    Thanks
    Amitava.

    amitavachatterjee1975 wrote:
    I checked and there is no such directory. I guess it is not that simple, the error I mean.Actually it is , please see,
    ORA-00955:     name is already used by an existing object
    Cause:     An attempt was made to create a database object (such as a table, view, cluster, index, or synonym) that already exists. A user's database objects must have distinct names.
    Action:     Enter a unique name for the database object or modify or drop the existing object so it can be reusedSo as Sb mentioned, check that which object is using the same name that you are trying to assign to this directory object and either rename or drop the object if you want to use the same name only. If not, you can always use another distinct name for this directory object .
    Aman....

Maybe you are looking for

  • Adobe forms:Data view palette not showing any fields present in the context

    Hi Experts, I am trying to create a static adobe form by following a step-by-step tutorial.The steps I have followed are: 1. Created an Interface with just one field in the Import parameters (apart from the default one). 2. Created a form by using th

  • Any certification for wd abap?

    Hi experts,     I like to know whether there is any certification particularly for webdynpro abap. If yes, then wat is the preferred book or material for that one and the eligibility criteria for that one. If possible explain me abt the certification

  • Need mapping columns for the table ic_whse_inv in R12.

    Hi Guys, We are upgrading to R12, and I need mapping for the following columns in the table ic_whse_inv to the Tables in R12. SAFETY_STOCK ,REORDER_POINT ,FIXED_LEADTIME, PURCHASE_IND Can you guys help me? Thanks\Kiran S.

  • Helpdesk not auto-refreshing on 7.4

    I'm not sure what changed, but with Chrome or Firefox the Help Desk is not autorefreshing when tickets come in. I have to hit the refresh button. I also noticed it's widescreen now instead of centered with margins on each side. Any ideas of what coul

  • MVC website design

    Hi there, just looking for advice, I have built a website using JSP running on a TomCat server it connects to a database using Java beans. The problem that i face now is that i have to document the system from design. What would be the best way to re