Visual Basic Screen Updating in BPC

We are developing a highly customized BPC input template in Excel and have made extensive use of Visual Basic; however it appears that the "application.screenupdating=false" VB function does not work when logged into BPC.  I assume somehow the BPC application disables this functionality?
Has anyone else run into this situation?  Found a workaround?
Any suggestions would be greatly appreciated!

You can greatly improve your chance of receiving a helpful answer to your question if you state the version (MS or NW) and the release (5.1, 7.0) of BPC which you are using.
Also notice the sticky [note|Please do not post BPC, SSM or FI/CO questions here!; at the top of this forum whereby we announced new dedicated forums for BPC which are the proper place to post your questions regarding BPC in the future.
Thanks and best regards,
[Jeffrey Holdeman|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/jeffrey+holdeman]
SAP BusinessObjects
Enterprise Performance Management
Regional Implementation Group

Similar Messages

  • Visual Basic errror when logging on to BPC

    We have an user with problem logging on to BPC after installing Microsofts Visio on the computer.
    The user gets the following Visual Basic errormessagebox : "The language DLL 'VBE6INTL.DLL' could not be found"
    How can this be solved?

    What version of SAP BPC?
    I suppose you have to unistall the SAP BPC and after you have to do a check diagnostic for client.
    If everything is fine into check diagnostic perform again the installation.
    If after the new install you still receive the error then try to find into window folder of another computer that dll.
    You have to copy that dll into computer where is missig and to try again.
    Kind Regards
    Sorin Radulescu

  • PCI-GPIB Card with Visual Basic gives blue screen and re-boots PC

    The application makes the "ibsic" call then "ibln" to find devices on the bus. Running the VB program the first time is fine, but if you end the program and re-run a second time, you get a blue screen and the PC reboots when the program reaches the lines that make the first call to the NI-488 functions. If you close out of VB and then restart VB, everything is OK again.
    What is wrong?

    Hi,
    Here's an article that describes the most common blue screen when using VB:
    Why Does My Windows 2000 or XP System Crash When I Use Visual Basic to Program GPIB?
    Hope this helps
    DiegoF

  • Error trying to open an Excel worksheet...getting Visual Basic MS Forms error

    Hi
    We have just upgraded a user from Office 2007 to 2013. However he is now unable to open an Excel spreadsheet and keeps getting Visual Basic errors
    MS Forms error. “Could not load an object because it is not available on this machine.”
    Acknowledge the error then..
    MS VBA error “Compile error Can’t find project or library”.
    On acknowledging and closing VB window the spreadsheet is available although VB is not running.
    VBA Project (Microsoft Forms 2.0 Object Library). However we still received the same errors.
    So we reinstalled Office 2013 to see if this would update the dll files. Alas the same error. Another user who works with VB said the FM20.dll files should be deleted and replaced with new ones. We acquired another FM20.dll file deleted the older one and
    replaced it in the folder. Rebooted but still the same error.
    He is using a 64bit Windows machine with Office 2013 click2run installed.
    We have spent 6 hours today trying to fix it with no luck.....Please can you help??
    Br
    Dan

    Hi,
    This is the forum to discuss questions and feedback for Microsoft Excel, this issue is more related to the Office develop, please post your question to the MSDN forum for Excel
    http://social.msdn.microsoft.com/Forums/en-US/home?forum=exceldev&filter=alltypes&sort=lastpostdesc
    The reason why we recommend posting appropriately is you will get the most qualified pool of respondents, and other partners who read the forums regularly can either share their knowledge or learn from your interaction with us. Thank you for your understanding.
    George Zhao
    TechNet Community Support
    It's recommended to download and install
    Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office
    programs.

  • ScreenUpdating=False fails to prevent screen updating, and causes bizarre behaviour

    I have recently installed Office 2013 (MSO Standard 2013) on my (Win 7 Professional) computer.  During a brief transitional period, Office 2003 will remain on my computer.
    I had been looking forward to running the many Excel VBA applications on Excel 2013, but am not only disappointed, but alarmed.  We are significantly dependent on over 50 business applications running in Excel VBA (many of which are complex,
    and many of which I have developed), but we now find that seemingly one difference alone (though we may yet discover more) is rendering many of them virtually unusable.  That difference is the behaviour of the Application.ScreenUpdating method.
    In Excel 2003, the ScreenUpdating method behaved intuitively, predictably and reliably.  It basically does what it says - all screen updating, except for the status bar, is frozen.  To allow users to peek at any updates, one would simply
    set ScreenUpdating=True and at the appropriate point freeze updating with ScreenUpdating=False.  Now, in Excel 2013, we are instead finding behaviour which has to be described as bizarre, counterintuitive and destructive.  Essentially, what is happening
    is that whenever another worksheet is activated, ScreenUpdating=False does not prevent screen updating - and for good measure, there are a number of other unpleasant side-effects.  I have spent many long hours searching through hundreds of forum posts
    and testing workarounds - all without success.  I have seen many posts complaining about ScreenUpdating in Excel 2013, but not a single implementable solution.  Yes, I've seen the advice about replacing Select or Activate methods with objects, but
    this workaround would not only be extremely costly and impractical in our case (it would require reworking tens of thousands of lines of code and would probably take many person months of unjustifiable work), it almost certainly wouldn't work.  (You'll
    have to take my word on that.)  And all because ScreenUpdating=False doesn't really prevent screen updating any more!  I cannot accept that ScreenUpdating is working properly in Excel 2013, nor that its functionality is in any way acceptable.
    The problems are best illustrated with a simple example.  I created this example to verify that the flickering was unrelated to the complexity of the business applications I referred to above.  In this example, there is a "master"
    workbook named "ScreenUpdatingTest.xls".  This contains a single button on its only worksheet, and this button executes macro "TestScreenUpdating".  This macro turns screen updating off, then sequentially opens workbook AAA.xls,
    workbook BBB.xls and workbook CCC.xls with a 3 second interval between each workbook being opened.  After 3 more seconds, it activates workbook ScreenUpdatingTest.xls and then turns screen updating on.  Along the way, it reports these actions in
    the status bar.  One would expect that this would result in AAA, BBB and CCC being opened in the background, with the user seeing no changes on the screen apart from the status bar and the workbooks appearing in the task bar.  This is precisely what
    happens in Excel 2003.
    By contrast, Excel 2013 seems to do absolutely nothing for about 12 seconds (even the task bar and the status bar remains unchanged), then, AAA, BBB and CCC can be seen to open (in maximized windows) in rapid succession.  The only message I see in the
    status bar is the last one, "Switched back to ScreenUpdatingTest.xls."  Even more bizarrely, that there is a call to Msgbox "Hi" just before the Application.ScreenUpdating=True at the end of the subroutine - and this should be unrelated
    to which workbook the focus end up with, right?  Wrong!  If Msgbox "Hi" is commented out, the focus ends up with CCC.xls - in other words, Workbooks(ThisWorkbook.Name).Activate seems to be ignored.  But if Msgbox "Hi" is
    uncommented, the focus ends up with ScreenUpdatingTest.xls!  This is crazy, isn't it?
    Sub TestScreenUpdating()
    Application.ScreenUpdating = False
    Application.Wait Now() + TimeValue("00:00:03")
    Workbooks.Open ThisWorkbook.Path & "\AAA.xls"
    Windows("AAA.xls").Activate
    Application.StatusBar = "AAA.xls has been opened."
    'Excel 2003:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls is open in the task bar.
    ' The message that AAA.xls has been opened appears in the status bar.
    'Excel 2013:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls is >>>NOT<<< open in the task bar
    ' >>>NO<<< message that AAA.xls has been opened appears in the status bar.
    Application.Wait Now() + TimeValue("00:00:03")
    Workbooks.Open ThisWorkbook.Path & "\BBB.xls"
    Windows("BBB.xls").Activate
    Application.StatusBar = "BBB.xls has been opened."
    'Excel 2003:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls and BBB.xls are open in the task bar.
    ' The message that BBB.xls has been opened appears in the status bar.
    'Excel 2013:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls and BBB.xls are >>>NOT<<< open in the task bar.
    ' >>>NO<<< message that BBB.xls has been opened appears in the status bar.
    Application.Wait Now() + TimeValue("00:00:03")
    Workbooks.Open ThisWorkbook.Path & "\CCC.xls"
    Windows("CCC.xls").Activate
    Application.StatusBar = "CCC.xls has been opened."
    'Excel 2003:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls, BBB.xls and CCC.xls are open in the task bar.
    ' The message that CCC.xls has been opened appears in the status bar.
    'Excel 2013:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls, BBB.xls and CCC.xls are >>>NOT<<< open in the task bar.
    ' >>>NO<<< message that CCC.xls has been opened appears in the status bar.
    Application.Wait Now() + TimeValue("00:00:03")
    Workbooks(ThisWorkbook.Name).Activate
    Application.StatusBar = "Switched back to ScreenUpdatingTest.xls."
    MsgBox "Hi"
    Application.ScreenUpdating = True
    'Excel 2003:
    ' I see workbook ScreenUpdatingTest.xls on the screen with no flickering.
    ' AAA.xls, BBB.xls and CCC.xls are open in the task bar.
    ' The message that we have switched back to ScreenUpdatingTest.xls appears in the status bar.
    'Excel 2013:
    ' Workbooks AAA.xls, BBB.xls and CCC.xls appear in rapid succession.
    ' When execution ends:
    ' If Msgbox "Hi" is commented out, the focus is with CCC.xls.
    ' If Msgbox "Hi" is uncommented, the focus is with ScreenUpdatingTest.xls.
    ' AAA.xls, BBB.xls and CCC.xls are >>>NOT<<< open in the task bar.
    ' The message that we have switched back to ScreenUpdatingTest.xls appears in the status bar.
    End Sub
    Surely it is reasonable to expect that such functionality should remain consistent from one version to the next!  Our applications in Excel 2003 had a professional, elegant user interface, and they behaved predictably, intuitively and robustly. 
    With Excel 2013, this is utterly trashed, with flickering, unpredictable behaviour (who knows what will get the focus?) and inefficiency (things are so much slower when the screen updates).  With Office 2003 going out of support, vast numbers of people
    in my company will be moving to Excel 2013 as Excel 2003 is decommissioned.  I imagine the same will be happening in many other companies.  We now find ourselves on the cusp of being dealt us a devastating blow due to ONE DYSFUNCTIONAL METHOD, and
    we are desperate for a solution.  A solution would either have to restore the former Excel 2003 functionality of ScreenUpdating, or it would have to introduce a new method which really does turn screen updating on or off without exception.
    Please, HELP!
    -Peter

    Thanks for the input, Jim.
    I don't think the Single Document Interface is contributing to the problem.  Since installing Office 2013, Excel 2003 has also inherited a Single Document Interface - yet while it behaves like a charm, Excel 2013 behaves ineptly.
    Whatever the reasons for the problem, the fact is that this functionality is now broken - one might even say catastrophically broken - and some sort of resolution is essential.  It would be madness to allow something like this to have such a severe
    impact on business operations.
    My call for help is still out there, as loud as ever!  BTW, I can send my example files, zipped, to anyone who might like to look at them.
    Peter
    Sydney, Australia

  • How to make like Encarta encyclopedia and basic screen settings and how to lock the documents in the entire data.

    dear guys how can i make like a off line Encarta encyclopedia and basic screen settings and how to lock the documents in the entire data in visual studio.                 
       thank you. 
                                                              Million
    Getu

    Dave,
    I will +1 Pixelan's products. They are great, simple, and have about the best support that I know of. When you explore, say Pixelan's SpiceMaster, dig deeply. Things appear rather mundane, on the surface, but there is so very much power lurking, just below the surface. I could almost imagine a 1000 page manual to cover every possible aspect of that program... Every time that I use it, I learn something new, and wonderful.
    Good luck,
    Hunt

  • Creating a DLL in Labview 8.6 and calling it from Visual Basic 6.0

    Dear friends,
    I need to create a DLL in Labview 8.6 and call it from Visual Basic 6.0. The system works as follows:
    I made an application using Labview 8.6 + Vision Assistant 8.6 where I can obtain the x,y coordinates of a template in an certain image being captured by an USB camera. The template coordinates change every time it moves and Visual Basic 6.0 must read these x,y values in real time. I found some information in the link http://zone.ni.com/devzone/cda/tut/p/id/3925, but it works for version 6.x of Labview and 8.6 version is different. Am I in the right path? If you have an updated tutorial like the one in the link above but for Labview 8.6 It would be very nice. Please help me.
    Kind regards.
    João Júnior

    Hello Osvaldo,
    I analysed the updated tutorial you sent me, but the thing is that it doen't show how to create the DLL in LV 8.6 but only show how to accessing the DLL from VB6. My problem is really HOW TO CREATE THE DLL IN LV8.6. In the link http://zone.ni.com/devzone/cda/tut/p/id/3063 there is detailed information about how to do this in LV6.x, the problem is that I don't find the path Tools»Build Application or Shared Library (DLL) in LV8.6, I think the procedure in LV8.6 is a little bit different. Don´t you have an updated tutorial on how to build a dll in LV8.6?How could you help me?
    Kind regards.
    João Júnior

  • 32-bit Vista Home Premium - Explorer.exe visual basic library C++ runtime crash

    Friends,
    I have a weird Explorer.exe crash going on when attempting to use Windows Explorer to access my iTunes Movies folder.
    Background: Running 32-bit Windows Vista Home Premium (SP2) on a Gateway GM5664 Desktop (2.3 GHz Quad-core AMD CPU with 3 Gb RAM). Firefox is primary browser.
    All of the latest Vista updates suggested by the OS have been successfully installed (thru 8-14-09). McAfee and Dr. Web scanners have shown no malware issues as of yesterday. Latest Radeon Catalyst Video Drivers are installed. C: drive has been cleaned and defragmented using the Vista utilities.
    Situation: I attemped to access the directory where my iTunes Video library lives using Windows Explorer. As Explorer is processing the files in the appropriate sub-directory, the system crashes with the following message:
    "Runtime error in explorer.exe. The application has required the Runtime to terminate it in an unusual way. Please contact the application's support team
    for more info." It indicates the nature of the error as something related to Visual Basic C++
    I downloaded the freeware CCleaner registry cleaner, and it corrected numerous registry errors, however, the phenomenon still exists. When I downloaded
    a commercial registry-fixing product (Quad Registry Cleaner), after doing a preliminary scan, it is indicating several more errors that the freeware version didn't pick up, the most common being empty registry keys. Since most commercial registry cleaners are snake oil, I am trying to identify other solutions to the problem.
    Thanks in advance for your help!
    - Wally

    I don't know the answer to this, but I wonder if there is a file in your movie folder that is upsetting Windows explorer when it attempts to preview it or display an icon.
    As an off the wall suggestion try setting your folder view to the simplest possible thing, no preview and list view.
    If you can't get into the problem folder, you can set this up in another folder and then go to folder options>>view where there is a button to apply the setting to all folders.

  • Can I have a general daq event in visual basic while outputing in dma mode?

    Hardware: PCI-6711
    Software: Visual Basic 6.0
    NI-DAQ 6.9.3f3
    Windows 2000
    I can't get the GeneralDAQEvent_Fire subroutine to happen. I'm trying to output two synchronized waveforms on two channels at sampling rates that can be changed on the fly. To do this, I've set the clock source of the channels to be the GPCTR1. I output on a pulse train on the GPCTR1 and adjust the pulse widths to vary the frequency. I need to be able to switch to the new pulse width at a precise time so that the correct samples are output at the correct samplerate. I want to generate a general daq event which fires whenever a certain number of pulses (and thus samples) on the GPCTR1 have been output. I will
    then reset the event and output samplerate within the GeneralDAQEvent_Fire subroutine for the next section of samples. I need to output at up to 1 MSample/second, so I need to be using DMA mode. I have not read anywhere that DAQEvent 0 Aqcuired or Generated n Scans requires interrupt mode, am I wrong about this? I have set my Channel string to CTR1, does this reference the GPCTR1? I set the board, DAQTrigVal0 and enabled properties and then call the refresh method. Is there something else I should do?
    I have been reading the NIDAQ Function Reference Help and the NIDAQ for PC Reference manual and have not found a solution. Any suggestions? Also, where can I find info on what the ConfigureDaqEvent method is supposed to do?

    Roz,
    First of all, I think you will want to use DAQ Event 1 since you desire for a message to be sent after every N updates. This will be more efficient than removing the current message and adding a new message each time the event fires. Furthermore, DAQ Events 0-2 can all be used with DMA transfers. However, you will be unable to use a counter channel with DAQ Events 0-2. Instead you should use one of the analog output channel you are clocking with the counter's output.
    Good luck with your application.
    Spencer S.

  • Bring back Visual Basic 6.0 ! We all need it.

    Please reconsider introducing VB6 to the market. It is needed by many.

    Hi Reed,
    Thanks for your two posts. Let me try to reply.
    Discussion or Argument ?
    You say "these forums are for discussions not arguments", and suggest that I want an "argument" or I am "trolling".
    Yes they are for discussions and no it isn't the case that I want an argument (or that I am trolling). I am trying to have a reasoned discussion following the opening poster's genuine request to "Please reconsider introducing VB6 to the market. It is needed
    by many."
    I don't consider you treated him fairly. You have some sort of administrative status on this forum, implicit in that is that you should treat all posters equally and fairly. Yet your first post was "Bring back Windows 3.11, we need it. ......VB6 should
    be retired and forgotten."  That post alone was unfair to the OP and it set the tone for other posts that followed.
    In other posts you refer to "VB6 zealots" but never criticize those who oppose the return of VB6 even when they accuse posters of being someone else. (I'm not making a plea for more banning and more censorship, I'm asking that everyone be treated
    equally).
    You also say "At the end of the day it is a fool's errand to argue with fools, so there's little sense to continuing the 'discussion'". Hardly fair and equal treatment, and certainly not an encouragement of discussion rather than argument.
    You also state "If this thread were meant to take itself seriously, it would have a title which was not so obviously false, and it would contain some content with a reasonable argument."  Again, the opening post was clearly a genuine call. You may
    not agree with it but that is no reason to call it 'obviously false'.
    Also the opening post doesn't even refer to VB.NET, it certainly doesn't suggest that VB6 should replace VB.NET - it is others who bring VB.NET into the argument. (And yet you move it to 'Off-topic posts' on the grounds it is not VB.Net related).
    Let me state I am putting this forward as my genuine opinion of your actions, I am not attempting to 'troll', 'flame' or to attack you personally.
    Valid arguments for VB6
    You say Cor has clearly demonstrated there are no valid arguments for keeping VB6 around. Not so.
    First of all the OP says "it is needed by many". Why should your and Cor's opinion be any more important than the OP's ?
    Here are some reasons it is needed (I limit myself to just 5 otherwise this post will be huge):
    1) VB6 is still widely used.  According to the TIOBE index it is the #7 most popular programming language - an amazing feat for a language last updated 16 years ago.  Particularly as Microsoft (& others) have spent 12 years trying to kill
    it off. You may not like it, but there it is.
    2) There are still a huge number of legacy VB6 applications in use, especially in corporates and government. Microsoft have (to their credit) recognized this and offer "it just works" support for the VB6 runtime until at least 2023 (soon to be extended).
    But this support is for the runtime, not the IDE.
     Microsoft effectively offer 2 options for these VB6 applications
       a) If no modifications are required, continue running the VB6 application (presumably Cor disagrees with Microsoft).
       b) If modifications are needed, migrate to VB.NET. 
    But in real life the most likely scenario is that the VB6 application will require a minor modification.
    So what do you do ? According to Microsoft you migrate. But if the modification is just to change (for example) some text on a form that would be nonsense.  I saw a suggestion a while ago that it cost $1 for every 3 lines of code migrated.  So
    a medium sized VB6 application could cost say $20,000 to migrate.  Clearly that is not an acceptable cost for the minor modification I suggested. (Don't get hung up on actual cost figures, I am just pointing out there are potentially significant
    costs involved).
    The obvious answer for this scenario is to use VB6 (at a cost of say $20 not $20,000). Yet Microsoft don't offer this, stating that the VB6 IDE is not supported on Windows 7 or 8. 
    Does anyone disagree that doing minor modifications in VB6 is the only acceptable solution in this scenario? Or are some going to suggest it is better to spend $20,000 than $20 ?
    Microsoft have painted themselves into a bit of a corner here, stating that they support unmodified VB6 applications until 2023, but you can't (theoretically) modify them.
    For completeness on this point I'll cover some other typical scenarios too:-
    One is that the VB6 program needs to become a web application - effectively this is then a re-write not a migrate, so you can decide what language is best to use. It may be, for example, that JavaScript/HTML5 is the way to go. (I've followed this route myself
    for some old VB6 apps).
    Another is that the VB6 application needs a mobile version. A few years ago that may have been VB.NET for Windows Mobile. (I've done that myself too, great for Windows CE/Windows Mobile 6.x). But doing this today you are really looking at iPhone,iPad
    and Android - again you can choose the best approach (native or web app ?) and language.
    The final scenario I'll mention is the one Microsoft do cover - migrate your desktop VB6 app to desktop VB.NET.  I can't think of any occasion in the last few years where I have found a genuine need to do this.  I have certainly seen cases where
    IT (or whoever) have decided that VB6 apps must be migrated because VB6 is 'obsolete' (I guess a view not too dissimilar from many in this forum). I've even done a few of these myself (though I had the sense to only do smaller migrations, not wanting
    to tie myself up with large scale migrations). I don't think of any of  these new applications (done by myself or others) were any better than the ones they replaced, but at least the customers were happy (and paid well).
    3) VB6 is the same language as VBA. VBA is a current, Microsoft supported language. It is in Microsoft's flagship product Office 2013. And it is the same language as VB6. You can cut and paste code between VB6 and VBA (and vice-versa). It is the same
    language.
    Both VB6 and VBA use the Visual Basic Runtime Library. In fact it is more than that, VB6 actually uses VBA to define it's language. In effect the VB6 IDE is a host for VBA in the same way that Word or Excel are hosts.
    It is strange that Microsoft support (and sell and extend) the language when it is named VBA but not when it is named VB6.
    Microsoft say VBA will be supported for the foreseeable future stating "This means that if you have an existing VBA project that you are satisfied with, you can be confident your investment is safe". Where is the logic in having this for VBA but not VB6
    They assure you your VBA investment is safe but won't give the same assurance for your VB6 investment.
    (OK, for the more pedantic posters VB6 is the same as VBA6.  VBA7 is the latest release and includes a handful of modifications to support 64 bit Windows. Prior to VBA7 the languages were kept identical, it is these same modifications that many
    of us now would like to have incorporated into an updated VB6).
    4) A suggestion to bring back an improved version of VB6 is the fifth most popular (out of almost 8,000) on the Visual Studio UserVoice site. Vote
    for VB6
    5) Microsoft's program manager for Visual Studio stated (Channel 9) "It isn't cost effective to keep rewriting code to get back to functional equivalence".  Quite so. So why re-write existing VB6 applications ?  (Again, Cor presumably disagrees).
    General Points
    You mention LightSwitch and SmallBasic. A good point.  But I'm sure you know neither support VB6 code so it doesn't address the concerns of the OP.  But it is nice to see that you aren't opposed to all languages that aren't called 'VB.NET'.
    So why the opposition to an updated VB6 ?  If you prefer, it could be named LightSwitch 6.1 rather than VB6.1 ? Or maybe SmallBasic 7.0 ? Or if you see VB6 as a threat to VB.NET you could name it VB Junior. As long as it can open and compile VB6
    code that's fine by me. Incidentally, there is certainly no call for VB6.1 to be part of "the .Net family".
    You say "you want these hard working people to DO MORE WORK so that you can continue to generate income from your ancient endeavors."   I'm not sure I see your point here.  How is asking for Microsoft to bring back VB6 (together with the modifications
    they have already done for VBA7) doing that? I suspect Microsoft could do this for a fraction of the money they have wasted on LightSwitch or SmallBasic. And if it is going to be more work than Microsoft can handle (as if) they should open source
    VB6.
    You mention that your 8 year old website is 'crap'. Well, that's what happens with websites. But the analogy doesn't really hold for a typical VB6 desktop program. A desktop CRUD program written in VB.NET doesn't really look (or behave) any different
    to the same program in VB6.
    You ask what I will be doing in 5 years when nobody uses PCs anymore ?  Well who knows what the future will bring, but it is likely to be VB6 for those (mainly corporate) users still using desktops and laptops or Windows tablets, JavaScript for
    Web apps - including iOS and Android - (I note Microsoft are recommending JavaScript/HTML5), and something (maybe Basic4Android ?)  for native Android apps if Android phones and tablets become more acceptable for corporate users. I'll probably
    also be migrating my VB.NET apps to JavaScript too.
    As things stand, Microsoft have sent a clear message: 'If you are planning to make a substantial investment in developing your software, if your application is mission-critical, if you expect to use it for years to come - don't use Microsoft languages.'
    Have Microsoft learnt from this ? The killing of Silverlight would suggest not.

  • Vi started from visual basic application

    Hi,
    I made a small visual basic application which has a "start loop", "stop loop",
    and "quit" button. It also has a text box. When I click "start loop", it
    calls
    a simple vi which generates a random number and sends it back to the
    text box of visual basic. This is done repeatedly until the "stop loop" button
    is pressed on the vb form. The problem is that when I run the program,
    the random numbers are updated correctly on the vb form but the form never
    gets the focus (no idle time) so I can never press the stop loop.
    Here is part of the code:
    Private Sub StartLoop_Click()
    ' this is the code for the "start loop" button
    RepeatLoop = True
    Do While RepeatLoop
    Call DoLVDataExchange
    ' the DoLVDataExchange con
    tains:
    ' Call vi.Call(paramNames, paramVals)
    Loop
    End Sub
    Private Sub StopLoop_Click()
    ' this is the code for the "Stop loop" button
    RepeatLoop = False
    End Sub
    Any suggestions welcome. Thanks for your help!
    Cyrille

    Cyrille wrote:
    >
    >
    > gets the focus (no idle time) so I can never press the stop loop.
    > Here is part of the code:
    >
    Check the vi.
    I have never done this with VB so I am not sure.
    In the VI you may need to add a "Wait MS" and wire in 200 (change to suit your
    needs)
    Or you may need to add this in the VB code
    It sounds like the thing is running full speed and you cant hit the
    button fast enough to stop the loop.
    Kevin Kent

  • Problems with visual basic and acrobat X

    Hello,
    In visual basic (excel), I had written a program in visual basic (excel) to open a pdf file on the local server.
    Before I updated to acrobat pro X, I had acrobat pro 8 on my pc.
    With the 8 I didn't had any problems to open the pdf-file.
    Now with the X version, it only opens the start window of acrobat x pro.
    Did they changed something in Xversion?
    Does anyone has an idea to solve this problem?
    Below you can find my visual basic code.
    Thanks in advanced !!
    Sylvie
    Code:
    Sub OpenPDF(bestand As String)
    Dim retval
    Dim sAdobeReader As String
    sAdobeReader = Chr(34) & "C:\Program Files\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe" & Chr(34)
    'sAdobeReader = "C:\Program Files\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe"
    retval = Shell(sAdobeReader & Chr(34) & bestand & Chr(34), 0)
    End Sub
    Private Sub SelectedPDF()
    OpenPDF ("N:\11276.pdf")
    End Sub

    This is really a user forum, I think you need a developer forum... maybe SDK?
    http://forums.adobe.com/community/acrobat

  • Translating Visual Basic Events into Java Events

    I'm in the process of porting a Visual Basic application to Java. Now, most of it is pretty straight forward, since good OO practice is evident in the original VB source. With a good dose of refactoring along the way the Java version is looking pretty good too.
    However, I'm having a problem with events. Here's a snuppet of one of a VB class that generates events and one that uses it:
    (Invoices.cls)
    -=-=-=-=-=-=-=-=-
    Event AddItem(ItemID as String)
    Event RemoveItem(ItemID as String)
    Private m_Items as Collection
    Public Sub Add(ItemID as String)
       m_Items.Add ItemID
       RaiseEvent AddItem(ItemID)
    End Sub
    Public Sub Remove(ItemID as String)
       m_Items.Remove ItemID
       RaiseEvent RemoveItem(ItemID)
    End Sub
    -=-=-=-=-=-=-=-=-and
    (OrderBook.cls)
    -=-=-=-=-=-=-=-=-
    Private WithEvents m_Invoices as Invoices
    Private Sub m_Invoices_AddItem(ItemID as String)
       CalculateTotals
    End Sub
    Private Sub m_Invoices_RemoveItem(ItemID as String)
       CalculateTotals
    End Sub
    -=-=-=-=-=-=-=-=-Can anyone give me a few pointers on what the Java equivalent to this VB code is?
    Thanks,
    Vince.

    Hi,
    There are few main things involved in a Java event delivery
    1. The event source
    2. The event listener
    3. The even data
    4. Registration
    5. The event delivery process
    I don't know the VB syntax, but any way it gives a good idea of what you wish to achieve.
    Here the Invoice class is basically the event source. And the OrderBook class is the event listener. To proceed further you will have to specify (define) the event listener first. Secondly you will have to create an event object which contains the data to be delvered via the event.
    1. Specifying the event listener interface
    public Interface ItemOperationListener
    public void itemAdded (ItemOperationEvent ioe);
    public void itemRemoved (ItemOperationEvent ioe);
    2. The event class
    public class ItemOperationEvent extends java.util.EventObject
    String item = null;
    public ItemOperationevent(Object source, String Item)
    super(source);
    this.item = item;
    public String getItem()
    return item;
    3. Creating and firing the event from the event source.
    public class Invoice
    private collection items; // any collection
    // to hold all the event listeners , this way u can define > 1
    // listeners
    javax.swing.event.EventListenerList listenerList = new javax.swing.event.EventListenerList();
    public void addItem(String item)
    items.add(item);
    // update the listeners
    fireItemAdded(item);
    public void removeItem(String item)
    items.add(item);
    // update the listeners
    fireItemRemoved(item);
    public void addItemOperationListener(itemOperationListener ioe)
    listenerList.add(ioe);
    public void removeItemOperationListener(itemOperationListener ioe)
    listenerList.remove(ioe);
    public void fireItemAdded(String item)
    ItemOperationEvent e = null;
    Object[] listeners = listenerList.getListenerList();
    // Process the listeners last to first, notifying
    // those that are interested in this event
    for (int i = listeners.length-2; i>=0; i-=2) {
    if (listeners== ItemOperationListener.class) {
    if (e == null)
    e = new ItemOperationEvent(this,item);
    ((ItemOperationlistener)listeners[i+1]).itemAdded(e);
    public void fireItemRemoved(String item)
    ItemOperationEvent e = null;
    Object[] listeners = listenerList.getListenerList();
    // Process the listeners last to first, notifying
    // those that are interested in this event
    for (int i = listeners.length-2; i>=0; i-=2) {
    if (listeners[i] == ItemOperationListener.class) {
    if (e == null)
    e = new ItemOperationEvent(this,item);
    ((ItemOperationlistener)listeners[i+1]).itemRemoved(e);
    4. The listener and the registration .
    public class OrderBook implements ItemOperationListener
    private Invoice invoice; // invoice instance.
    public OrderBook()
    // register for event updates .
    invoice.additemOperationListener(this);
    public void itemAdded(ItemOperationEvent ioe)
    String tobeAdded = ioe.getItem();
    calculate();
    public void itemRemoved(ItemOperationEvent ioe)
    String tobeRemoved = ioe.getItem();
    calculate();
    public void calculate()
    I hope this gives a picture of the standard method of event delivery in java . However you can even follow the Observer, Observable pattern (see the documentation for java.util.Observer, Observable).
    Hope this helps,
    Manish.

  • Visual Basic code genration for calling BAPI_SALESORDER_SIMULATE

    Hi gurus,
    Someone asked me how to generate the visual basic code for calling BAPI_SALESORDER_SIMULATE via RFC. I thought this function was available in SE37 but I can't find it...
    Can someone help me ?
    Thank you
    Jean-Michel

    **&#12288;&#12503;&#12525;&#12464;&#12521;&#12512;&#65321;&#65316;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288; &#65306; ZBAPI_SALESORDER_CREATE               *
    **&#12288;&#12503;&#12525;&#12464;&#12521;&#12512;&#21517;&#31216;&#12288;&#12288;    &#12288;&#12288; &#65306; Upload Sales Order Creation                   *
    **&#12288;&#20966;&#29702;&#27010;&#35201;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;   &#12288;&#65306;                                       *
    **&#12288;&#20316;&#25104;&#32773;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288; &#65306; Karthik.P                             *
    **&#12288;&#20316;&#25104;&#26085;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288;&#12288; &#65306; 2006/08/10                            *
    REPORT  ZBAPI_SALESORDER_CREATE LINE-SIZE 132 MESSAGE-ID ZMMBAPI .
           Internal table definition                                     *
    ****<<<<<Communication Fields: Sales and Distribution Document Header>>>>>>>>
    DATA: GT_ORDER_HEADER_IN LIKE BAPISDHD1,
    *******<<<Checkbox Fields for Sales and Distribution Document Header>>>>>>>>>
          GT_ORDER_HEADER_INX  LIKE    BAPISDHD1X,
    *****<<<<<Return Parameter>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
          GT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE,  " Return Messages
    *********<<<Communication Fields: Sales and Distribution Document Item<>>>>>
          GT_ORDER_ITEMS_IN LIKE BAPISDITM OCCURS 0 WITH HEADER LINE, " Item Data
    *********<<<Communication Fields: Sales and Distribution Document Item>>>>>>>
          GT_ORDER_ITEMS_INX LIKE BAPISDITMX OCCURS 0 WITH HEADER LINE, "Item Data Checkbox
    *********<<<Communication Fields: Sales and Distribution Document Item>>>>>>>
          GT_SALESDOCUMENT LIKE BAPIVBELN-VBELN , "Number of Generated Document
    *********<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
          GT_ORDER_PARTNERS  LIKE BAPIPARNR OCCURS 0 WITH HEADER LINE, "Document Partner
    ********<<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
          GT_ORDER_SCHEDULES_IN LIKE BAPISCHDL OCCURS 0 WITH HEADER LINE, "Schedule Line Data
    ****<<<<<<<<Checkbox List for Maintaining Sales Document Schedule Line>>>>>>>>
          GT_ORDER_SCHEDULES_INX LIKE BAPISCHDLX OCCURS 0 WITH HEADER LINE, " Checkbox Schedule Line Data
    *******Communication Fields for Maintaining Conditions in the Order
          GT_ORDER_CONDITIONS_IN  LIKE BAPICOND OCCURS 0 WITH HEADER LINE,
    ******Communication Fields for Maintaining Conditions in the Order
          GT_ORDER_CONDITIONS_INX LIKE BAPICONDX OCCURS 0 WITH HEADER LINE.
           Data definition                                               *
    DATA:  BEGIN OF GT_FT_SALES OCCURS 0,
           DOC_TYPE(4)  ,        "Sales Document Type
           SALES_ORG(4) ,        "Sales Organization
           DISTR_CHAN(2)  ,      "Distribution Channel
           DIVISION(2)   ,       "DIVISION(2)
           SALES_DIST(6)  ,      "Sales district
           INCOTERMS1(3)  ,      "Incoterms (part 1)
           INCOTERMS2(28)  ,     "Incoterms (part 2)
           PMNTTRMS(4)  ,        "Terms of payment key
           PRICE_DATE(8) ,       "Date for pricing and exchange rate
           PURCH_NO_C(35)  ,     "Customer purchase order number
           PURCH_NO_S(35)  ,     "Ship-to Party's Purchase Order Number
           EXCHG_RATE(8)  ,      "Directly quoted exchange rate for pricing and statistics
           CURRENCY(5) ,         "SD document currency
           MATERIAL(18),         "MATERIAL
           TARGET_QTY(13)  ,     "Target quantity in sales units
           ITEM_CATEG(4)  ,      "Sales document item category
           MATL_GROUP(8)  ,      "Material Group
           PURCH_NO_C1(35),      "Customer purchase order number
           SALES_DIST1(6)  ,     "Sales district
           INCOTERMS11(3)  ,     "Incoterms (part 1)
           INCOTERMS21(28),     "Incoterms (part 2)
           PMNTTRMS1(4)  ,     "Terms of payment key
           EXCHG_RATE1(8) ,    "Directly quoted exchange rate for pricing and statistics
           PRICE_DATE1(8) ,    "Date for pricing and exchange rate
           TRG_QTY_NO(5)    , "Factor for converting sales units to base units (target qty)
           DIVISION1(2)     ,                                   "DIVISION1
           SALQTYNUM(5)     , "Numerator (factor) for conversion of sales quantity into SKU
           GROSS_WGHT(3)    , "Gross Weight of the Item
           NET_WEIGHT(15)    , "Net Weight of the Item
           UNTOF_WGHT(3)    ,"Weight Unit
           PARTN_ROLE(2)   ,"Partner function
           PARTN_NUMB(10)   ,"Customer Number 1
    ********<<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
           ITM_NUMBER(6) ,"Item number of the SD document
           REQ_QTY(8)  , "Schedule line date
           DLV_DATE(8)  , "Schedule line date
           MS_DATE(8)  , "Material availability date
           LOAD_DATE(8) , "Loading time (local time with reference to a shipping point)
           GI_DATE(8), "Time of goods issue (local DATE, with reference to a plant)
           TP_DATE(8)  , "Transportation planning -time (local w/ref. to shipping pnt)
           ITM_NUMBER2(6) , "Condition item number
    END OF GT_FT_SALES,
           MSG(240) TYPE  C,  " Return Message
           E_REC(8) TYPE C,    " Error Records Counter
           REC_NO(8) TYPE C, " Records Number Indicator
           S_REC(8) TYPE C,   " Successful Records Counter
           T_REC(8) TYPE C.   " Total Records Counter
    selection block for EXCEL UPLOAD FILE>>>>>>>>>>>>>>>>>>>>>>>>
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
      PARAMETERS FILE TYPE  IBIPPARMS-PATH OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK B1.
    *<<<<AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE .>>>>>>>>>>>>
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE .
      CALL FUNCTION 'F4_FILENAME'
        EXPORTING
          PROGRAM_NAME  = SYST-CPROG
          DYNPRO_NUMBER = SYST-DYNNR
        IMPORTING
          FILE_NAME     = FILE.
    **<<<<<<<<<<<<<<<<<START-OF-SELECTION.>>>>>>>>>>>>>>>>>>>>>>>>>>>
    START-OF-SELECTION.
      CALL FUNCTION 'WS_UPLOAD'                                 "#EC *
        EXPORTING
          FILENAME                = FILE
          FILETYPE                = 'DAT'
        TABLES
          DATA_TAB                = GT_FT_SALES
        EXCEPTIONS
          CONVERSION_ERROR        = 1
          FILE_OPEN_ERROR         = 2
          FILE_READ_ERROR         = 3
          INVALID_TYPE            = 4
          NO_BATCH                = 5
          UNKNOWN_ERROR           = 6
          INVALID_TABLE_WIDTH     = 7
          GUI_REFUSE_FILETRANSFER = 8
          CUSTOMER_ERROR          = 9
          NO_AUTHORITY            = 10
          OTHERS                  = 11.
      IF  SY-SUBRC <> 0  .
        MESSAGE E000.
      ENDIF.
      SKIP 3.
      FORMAT COLOR COL_HEADING INVERSE ON.
        WRITE 40 TEXT-001.
      FORMAT COLOR COL_HEADING INVERSE OFF.
      SKIP 1.
      FORMAT COLOR COL_NEGATIVE INVERSE ON.
        WRITE :/ TEXT-002, 13 SY-MANDT , 104 TEXT-003, 111 SY-UNAME,
                  / TEXT-004, 13 SY-DATUM , 104 TEXT-005, 111 SY-UZEIT.
      FORMAT COLOR COL_NEGATIVE INVERSE OFF.
      SKIP 3.
      LOOP AT GT_FT_SALES.
          PERFORM SLALE_UPLOAD_DATA.
      ENDLOOP.
      T_REC = E_REC + S_REC.
      SKIP 3.
      FORMAT COLOR COL_TOTAL INVERSE ON.
        WRITE: /38 TEXT-007, T_REC.
      FORMAT COLOR COL_TOTAL INVERSE OFF.
      FORMAT COLOR COL_NEGATIVE INVERSE ON.
        WRITE: /38 TEXT-008, E_REC.
      FORMAT COLOR COL_NEGATIVE INVERSE OFF.
      FORMAT COLOR COL_TOTAL INVERSE ON.
        WRITE: /38 TEXT-009, S_REC.
      FORMAT COLOR COL_TOTAL INVERSE OFF.
    *&      Form  SLALE_UPLOAD_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM SLALE_UPLOAD_DATA .
    *******<<<<<<<<<<Communication Fields: Sales and Distribution Document Header>>>>>>
        GT_ORDER_HEADER_IN-DOC_TYPE =    'TA'.
        GT_ORDER_HEADER_IN-SALES_ORG =  GT_FT_SALES-SALES_ORG . "'0001'
        GT_ORDER_HEADER_IN-DISTR_CHAN = GT_FT_SALES-DISTR_CHAN. "'01'
        GT_ORDER_HEADER_IN-DIVISION  =   GT_FT_SALES-DIVISION.  " '01'
        GT_ORDER_HEADER_IN-SALES_DIST = GT_FT_SALES-SALES_DIST ."'000001'
        GT_ORDER_HEADER_IN-INCOTERMS1 = GT_FT_SALES-INCOTERMS1.  "'CFR'
        GT_ORDER_HEADER_IN-INCOTERMS2 = GT_FT_SALES-INCOTERMS2 . "'HAMBURG'
        GT_ORDER_HEADER_IN-PMNTTRMS = GT_FT_SALES-PMNTTRMS .    "'0001'
        GT_ORDER_HEADER_IN-PRICE_DATE = GT_FT_SALES-PRICE_DATE ."'20060818'
        GT_ORDER_HEADER_IN-PURCH_NO_C =  '32'.
        GT_ORDER_HEADER_IN-PURCH_NO_S =   '32'.
        GT_ORDER_HEADER_IN-EXCHG_RATE =  GT_FT_SALES-EXCHG_RATE ."'1.00000'
        GT_ORDER_HEADER_IN-CURRENCY = GT_FT_SALES-CURRENCY . " 'EUR'
    ********<<<Checkbox Fields for Sales and Distribution Document Header>>>>>>>>>
        GT_ORDER_HEADER_INX-DOC_TYPE   = 'X'.
        GT_ORDER_HEADER_INX-SALES_ORG  = 'X'.
        GT_ORDER_HEADER_INX-DISTR_CHAN = 'X'.
        GT_ORDER_HEADER_INX-DIVISION   = 'X'.
        GT_ORDER_HEADER_INX-SALES_DIST = 'X'.
        GT_ORDER_HEADER_INX-INCOTERMS1 = 'X'.
        GT_ORDER_HEADER_INX-INCOTERMS2 = 'X'.
        GT_ORDER_HEADER_INX-PMNTTRMS =   'X'.
        GT_ORDER_HEADER_INX-PRICE_DATE = 'X'.
        GT_ORDER_HEADER_INX-PURCH_NO_C = 'X'.
        GT_ORDER_HEADER_INX-PURCH_NO_S = 'X'.
        GT_ORDER_HEADER_INX-EXCHG_RATE =  'X'.
        GT_ORDER_HEADER_INX-CURRENCY = 'X'.
    *****<<<<<<Communication Fields: Sales and Distribution Document Item>>>
        GT_ORDER_ITEMS_IN-ITM_NUMBER = '000010'.
        GT_ORDER_ITEMS_IN-MATERIAL  =  GT_FT_SALES-MATERIAL .
        GT_ORDER_ITEMS_IN-PO_ITM_NO = '32'.
        GT_ORDER_ITEMS_IN-CUST_MAT22 = 'AGNI-IV'.
        GT_ORDER_ITEMS_IN-BILL_DATE = '20060808'.
        GT_ORDER_ITEMS_IN-PLANT = '0001'.
    *GT_ORDER_ITEMS_IN-STORE_LOC = '0001'.
        GT_ORDER_ITEMS_IN-TARGET_QTY = GT_FT_SALES-TARGET_QTY . "'1000'
        GT_ORDER_ITEMS_IN-ITEM_CATEG = GT_FT_SALES-ITEM_CATEG . "'TAN'
        GT_ORDER_ITEMS_IN-MATL_GROUP = GT_FT_SALES-MATL_GROUP . "'01'
        GT_ORDER_ITEMS_IN-PURCH_NO_C = GT_FT_SALES-PURCH_NO_C . "'32'
        GT_ORDER_ITEMS_IN-SALES_DIST = GT_FT_SALES-SALES_DIST . "'000001'
        GT_ORDER_ITEMS_IN-INCOTERMS1 = GT_FT_SALES-INCOTERMS1 . "'CFR'
        GT_ORDER_ITEMS_IN-INCOTERMS2 = GT_FT_SALES-INCOTERMS2 . "'HAMBURG'
        GT_ORDER_ITEMS_IN-PMNTTRMS = GT_FT_SALES-PMNTTRMS  .    "'0001'.
        GT_ORDER_ITEMS_IN-EXCHG_RATE = GT_FT_SALES-EXCHG_RATE . "'1.00000'
        GT_ORDER_ITEMS_IN-PRICE_DATE = GT_FT_SALES-PRICE_DATE . "'20060808'
    *GT_ORDER_ITEMS_IN-SALES_UNIT = 'DZ'.
        GT_ORDER_ITEMS_IN-TRG_QTY_NO = GT_FT_SALES-TRG_QTY_NO . "'23'
        GT_ORDER_ITEMS_IN-DIVISION = GT_FT_SALES-DIVISION   .   "'01'
        GT_ORDER_ITEMS_IN-SALQTYNUM = GT_FT_SALES-SALQTYNUM .   "'32'
        GT_ORDER_ITEMS_IN-GROSS_WGHT = GT_FT_SALES-GROSS_WGHT.  " ' 25272000'
        GT_ORDER_ITEMS_IN-NET_WEIGHT = GT_FT_SALES-NET_WEIGHT.  "'24464000'
        GT_ORDER_ITEMS_IN-UNTOF_WGHT = GT_FT_SALES-UNTOF_WGHT . " 'KG'
    *GT_ORDER_ITEMS_IN-CURRENCY = 'EUR'.
        APPEND  GT_ORDER_ITEMS_IN.
    ****<<<<<<Communication Fields: Sales and Distribution Document Item>>>
        GT_ORDER_ITEMS_INX-ITM_NUMBER = '000010'.
        GT_ORDER_ITEMS_INX-MATERIAL = 'X'.
    *GT_ORDER_ITEMS_INX-PO_ITM_NO = 'X'.
        GT_ORDER_ITEMS_INX-CUST_MAT22 = 'X'.
        GT_ORDER_ITEMS_INX-BILL_DATE = 'X'.
        GT_ORDER_ITEMS_INX-PLANT = 'X'.
    *GT_ORDER_ITEMS_INX-STORE_LOC = 'X'.
        GT_ORDER_ITEMS_INX-TARGET_QTY = 'X'.
        GT_ORDER_ITEMS_INX-ITEM_CATEG = 'X'.
        GT_ORDER_ITEMS_INX-MATL_GROUP = 'X'.
        GT_ORDER_ITEMS_INX-PURCH_NO_C = 'X'.
        GT_ORDER_ITEMS_INX-SALES_DIST = 'X'.
        GT_ORDER_ITEMS_INX-INCOTERMS1 = 'X'.
        GT_ORDER_ITEMS_INX-INCOTERMS2 = 'X'.
        GT_ORDER_ITEMS_INX-PMNTTRMS = 'X'.
        GT_ORDER_ITEMS_INX-EXCHG_RATE = 'X'.
        GT_ORDER_ITEMS_INX-PRICE_DATE = 'X'.
    *GT_ORDER_ITEMS_INX-SALES_UNIT = 'X'.
        GT_ORDER_ITEMS_INX-TRG_QTY_NO = 'X'.
        GT_ORDER_ITEMS_INX-DIVISION = 'X'.
        GT_ORDER_ITEMS_INX-SALQTYNUM = 'X'.
        GT_ORDER_ITEMS_INX-GROSS_WGHT =  'X'.
        GT_ORDER_ITEMS_INX-NET_WEIGHT = 'X'.
        GT_ORDER_ITEMS_INX-UNTOF_WGHT = 'X'.
    *GT_ORDER_ITEMS_IN-CURRENCY = 'x'.
        APPEND  GT_ORDER_ITEMS_INX.
    *****<<<<<<Communications Fields: SD Document Partner: WWW
        GT_ORDER_PARTNERS-PARTN_ROLE =   'WE'.
        GT_ORDER_PARTNERS-PARTN_NUMB =  '0000000057'.
    ***GT_ORDER_PARTNERS-ITM_NUMBER = GT_FT_SALES-ITM_NUMBER . " '000010'.
        APPEND  GT_ORDER_PARTNERS.
    *********<<<<Communications Fields: SD Document Partner: WWW>>>>>>>>>>>>>>>>>>
        GT_ORDER_SCHEDULES_IN-ITM_NUMBER = GT_FT_SALES-ITM_NUMBER." '000010'
        GT_ORDER_SCHEDULES_IN-REQ_QTY = GT_FT_SALES-REQ_QTY .   "'234'
        GT_ORDER_SCHEDULES_IN-DLV_DATE = GT_FT_SALES-DLV_DATE  ."  '20060824'.
        GT_ORDER_SCHEDULES_IN-MS_DATE =  GT_FT_SALES-MS_DATE .  "'20060808'
        GT_ORDER_SCHEDULES_IN-LOAD_DATE = GT_FT_SALES-LOAD_DATE.  " '20060822'
        GT_ORDER_SCHEDULES_IN-GI_DATE = GT_FT_SALES-GI_DATE . " '20060823'
        GT_ORDER_SCHEDULES_IN-TP_DATE = GT_FT_SALES-TP_DATE .   "'20060821'
        APPEND  gt_ORDER_SCHEDULES_IN.
    *********<<<<Communications Fields: SD Document Partner: WWW FLAG>>>>>>>>>>>>>>>>>>
        GT_ORDER_SCHEDULES_INX-ITM_NUMBER = '000010'.
        GT_ORDER_SCHEDULES_INX-REQ_QTY = 'X'.
        GT_ORDER_SCHEDULES_INX-DLV_DATE = 'X'.
        GT_ORDER_SCHEDULES_INX-MS_DATE = 'X'.
        GT_ORDER_SCHEDULES_INX-LOAD_DATE = 'X'.
        GT_ORDER_SCHEDULES_INX-GI_DATE = 'X'.
        GT_ORDER_SCHEDULES_INX-DLV_DATE = 'X'.
        APPEND  gt_ORDER_SCHEDULES_INX.
    ********Communication Fields for Maintaining Conditions in the Order
        GT_ORDER_CONDITIONS_IN-ITM_NUMBER = GT_FT_SALES-ITM_NUMBER ." '000010'
        APPEND GT_ORDER_CONDITIONS_IN.
    ***Communication Fields for Maintaining Conditions in the Order
        GT_ORDER_CONDITIONS_INX-ITM_NUMBER = '000010'.
        APPEND GT_ORDER_CONDITIONS_INX.
        CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
          EXPORTING
       SALESDOCUMENTIN               =
            ORDER_HEADER_IN               = GT_ORDER_HEADER_IN
            ORDER_HEADER_INX              = GT_ORDER_HEADER_INX
      SENDER                        =
      BINARY_RELATIONSHIPTYPE       =
      INT_NUMBER_ASSIGNMENT         =
      BEHAVE_WHEN_ERROR             =
      LOGIC_SWITCH                  =
      TESTRUN                       =
      CONVERT                       = ' '
         IMPORTING
           SALESDOCUMENT                  = GT_SALESDOCUMENT
          TABLES
           RETURN                         = GT_RETURN
            ORDER_ITEMS_IN                = GT_ORDER_ITEMS_IN
            ORDER_ITEMS_INX               = GT_ORDER_ITEMS_INX
            ORDER_PARTNERS                = GT_ORDER_PARTNERS
           ORDER_SCHEDULES_IN            =  GT_ORDER_SCHEDULES_IN
           ORDER_SCHEDULES_INX           =  GT_ORDER_SCHEDULES_INX
           ORDER_CONDITIONS_IN           =  GT_ORDER_CONDITIONS_IN
           ORDER_CONDITIONS_INX          =  GT_ORDER_CONDITIONS_INX
      ORDER_CFGS_REF                =
      ORDER_CFGS_INST               =
      ORDER_CFGS_PART_OF            =
      ORDER_CFGS_VALUE              =
      ORDER_CFGS_BLOB               =
      ORDER_CFGS_VK                 =
      ORDER_CFGS_REFINST            =
      ORDER_CCARD                   =
      ORDER_TEXT                    =
      ORDER_KEYS                    =
      EXTENSIONIN                   =
      PARTNERADDRESSES              =
        IF GT_RETURN-TYPE EQ 'E' .
          E_REC = E_REC + 1.
          READ TABLE GT_RETURN WITH KEY ID = 'V1'.
          FORMAT COLOR COL_NEGATIVE INVERSE ON.
          REC_NO = E_REC + S_REC.
              CONCATENATE TEXT-006 REC_NO ':'
              GT_RETURN-MESSAGE INTO MSG SEPARATED BY SPACE .
              CONDENSE MSG.
              WRITE: / MSG.
          FORMAT COLOR COL_NEGATIVE INVERSE OFF.
      ELSEIF GT_RETURN-TYPE EQ 'S'.
          S_REC = S_REC + 1.
          FORMAT COLOR COL_POSITIVE INVERSE ON.
              MSG = GT_RETURN-MESSAGE.
              CONDENSE MSG.
              WRITE: / MSG .
          FORMAT COLOR COL_POSITIVE INVERSE OFF.
         PERFORM COMMIT_MM.
    ENDIF.
          CLEAR:  GT_RETURN[], MSG.
    ENDFORM.                    " SLALE_UPLOAD_DATA
    *&      Form  COMMIT_MM
          text
    -->  p1        text
    <--  p2        text
    FORM COMMIT_MM .
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
          EXPORTING
            WAIT   = 'X'
          IMPORTING
            RETURN = GT_RETURN.
      clear:      GT_ORDER_ITEMS_IN[],GT_ORDER_CONDITIONS_IN[].
    ENDFORM.                    " COMMIT_MM

  • Visual studio 2013 update 4 will not install

    I am currently running visual studio 2013 Version 3, and i recently just downloaded the update 4 file.  I've tried installing it multiple times but all it does is show the splash screen and then wink out.  Checked the task processes and its not
    running.  I've checked the event log, and nothing interesting in there either.  I copied the file to another machine and it ran fine, so i know the file is good.  I've also downloaded the DVD ISO version of the updater from MSDN, with the same
    results.  Am i missing something?  Is there a different way i can debug this to find out why it's not working for me?  Thanks for any help!
    Phil Johnson

    Hi there.  I actually am entirely up to date on windows update, i show nothing needs to install there.  
    I am running F-secure, but when i go into services and disable all of the F-secure services, I still get the same problem.
    When i run the update file, i get 3 new files that occur in my temp folder.  Below is the contents of the log file that is created:
    [2520:2C8C][2014-11-16T20:02:23]i001: Burn v3.7.3424.0, Windows v6.3 (Build 9600: Service Pack 0), path: C:\Users\phil.johnson\Downloads\VS2013.4.exe, cmdline: ''
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'EditionDisplayName' to value '#loc.vsupdatededitiondisplayname'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'FactorMsi' to value '1.3'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'MoreLanguageFwlinkId' to value '427825'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'PrivacyAgreementFwlinkId' to value '427803'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'PrivacyStatementFwlinkId' to value '427803'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'MinOsLevelFwlinkId' to value '427813'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'SolutionFwlinkId' to value '427804'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'HelpFwlinkId' to value '427805'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'IE10FwlinkId' to value '427807'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'WinBlueFwlinkId' to value '427810'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'SHA256BlockFwlinkId' to value '427811'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'Win81PreRelBlockFwlinkId' to value '427809'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'NetfxProductVersion' to value '4.5.31101'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'ProfessionalVSVersion' to value '11.0.50727'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'BaselineBundleVersion' to value '12.0.21005'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'FirstSlipstreamBundleVersion' to value '12.0.21006'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'ProductKey' to value 'VVXKCDCCWD3B29PWQK2C3GYD7'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_chs' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_cht' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_csy' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_deu' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_esn' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_fra' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_ita' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_jpn' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_kor' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_plk' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_ptb' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_rus' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'PerfToolsRES_LangRelevant_trk' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'Win8Dev_Dev11Path' to value '[ProgramFilesFolder]Microsoft Visual Studio 11.0\'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'Dev11_UT_Path' to value '[ProgramFilesFolder]Microsoft Visual Studio 11.0\'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'WinSDK_Common_KitsRootPath' to value '[ProgramFilesFolder]Windows Kits\8.0\'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'Dev11_VC_Path' to value '[ProgramFilesFolder]Microsoft Visual Studio 11.0\'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'IsChainingx64VSTODT' to value '1'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'IsChainingx86VSTODT' to value '1'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'IsChainingx64VSTORT' to value '1'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing numeric variable 'IsChainingx86VSTORT' to value '1'
    [2520:2C8C][2014-11-16T20:02:23]i000: Initializing string variable 'Include_WindowsPhoneAppxEmulator' to value 'true'
    [2520:2C8C][2014-11-16T20:02:23]i000: Setting string variable 'WixBundleLog' to value 'C:\Users\PHIL~1.JOH\AppData\Local\Temp\dd_vsupdate_KB2829760_20141116200223.log'
    [2520:2C8C][2014-11-16T20:02:23]i000: Setting string variable 'WixBundleOriginalSource' to value 'C:\Users\phil.johnson\Downloads\VS2013.4.exe'
    [2520:2C8C][2014-11-16T20:02:23]i000: Setting string variable 'WixBundleOriginalSourceFolder' to value 'C:\Users\phil.johnson\Downloads\'
    [2520:2C8C][2014-11-16T20:02:23]i000: Setting string variable 'WixBundleName' to value 'Visual Studio 2013 Update 4 (KB2829760)'
    [2520:2C8C][2014-11-16T20:02:23]i000: Loading managed bootstrapper application.
    [2520:2C8C][2014-11-16T20:02:23]e000: Error 0x80070002: Failed to create the managed bootstrapper application.
    [2520:2C8C][2014-11-16T20:02:23]e000: Error 0x80070002: Failed to create UX.
    [2520:2C8C][2014-11-16T20:02:23]e000: Error 0x80070002: Failed to load UX.
    [2520:2C8C][2014-11-16T20:02:23]e000: Error 0x80070002: Failed while running 
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: BaselineBundleVersion = 12.0.21005
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: Dev11_UT_Path = C:\Program Files (x86)\Microsoft Visual Studio 11.0\
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: Dev11_VC_Path = C:\Program Files (x86)\Microsoft Visual Studio 11.0\
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: EditionDisplayName = #loc.vsupdatededitiondisplayname
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: FactorMsi = 1.3
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: FirstSlipstreamBundleVersion = 12.0.21006
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: HelpFwlinkId = 427805
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: IE10FwlinkId = 427807
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: Include_WindowsPhoneAppxEmulator = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: IsChainingx64VSTODT = 1
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: IsChainingx64VSTORT = 1
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: IsChainingx86VSTODT = 1
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: IsChainingx86VSTORT = 1
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: MinOsLevelFwlinkId = 427813
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: MoreLanguageFwlinkId = 427825
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: NetfxProductVersion = 4.5.31101
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_chs = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_cht = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_csy = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_deu = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_esn = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_fra = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_ita = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_jpn = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_kor = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_plk = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_ptb = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_rus = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PerfToolsRES_LangRelevant_trk = true
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PrivacyAgreementFwlinkId = 427803
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: PrivacyStatementFwlinkId = 427803
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: ProductKey = VVXKCDCCWD3B29PWQK2C3GYD7
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: ProfessionalVSVersion = 11.0.50727
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: ProgramFilesFolder = C:\Program Files (x86)\
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: SHA256BlockFwlinkId = 427811
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: SolutionFwlinkId = 427804
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: Win81PreRelBlockFwlinkId = 427809
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: Win8Dev_Dev11Path = C:\Program Files (x86)\Microsoft Visual Studio 11.0\
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WinBlueFwlinkId = 427810
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WinSDK_Common_KitsRootPath = C:\Program Files (x86)\Windows Kits\8.0\
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleAction = 5
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleElevated = 0
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleLog = C:\Users\PHIL~1.JOH\AppData\Local\Temp\dd_vsupdate_KB2829760_20141116200223.log
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleManufacturer = Microsoft Corporation
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleName = Visual Studio 2013 Update 4 (KB2829760)
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleOriginalSource = C:\Users\phil.johnson\Downloads\VS2013.4.exe
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleOriginalSourceFolder = C:\Users\phil.johnson\Downloads\
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleProviderKey = vsupdate_KB2829760
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleTag = vsupdate_KB2829760,1033
    [2520:2C8C][2014-11-16T20:02:23]i410: Variable: WixBundleVersion = 12.0.31101.0
    [2520:2C8C][2014-11-16T20:02:23]e000: Error 0x80070002: Failed to run per-user mode.
    [2520:2C8C][2014-11-16T20:02:24]i007: Exit code: 0x80070002, restarting: No
    Phil Johnson

Maybe you are looking for