Time to pass data to half buffer in a double buffer acquisition

Hello all:
I'm building a DAQ system with CVI 6.0 and an old Lab-pc+. I don't have access to the hardware at the moment and I was thinking how much time it will take to DaqDBTransfer function to pass 75750 points to the halfbuffer. Someone who know this?
Other question for the group:
Imagine that I'm programming this for acquiring with Lab_ISCAN_Start and timebase 1us with sample interval 33 which means 30303,030303 Hz (3 channels, or 10101,01010 Hz/chnl). I need to know if it's certain to say that point n acquired has happened exactly at n*3.3*10E-5 seconds. which is, for example, that point 80000 has been acquired at 2,64 s. from the beginning of the Scan. And how accurate is that.
thank y
ou all in advance.

Hello Gonzalo,
Be aware that this depends on the number of channels in your scan list and where it is in the scan list. In the Lab_ISCAN_Start() function there are two numbers you are concerned with. The sampInterval and the sampTimbase. (And the scanInterval if you choose to use this.)
First, determine when the particular channel you are interested in is sampled. This depends on which channel it is in the scan list. The Nth channel will be sampled at N*(sampInterval*sampTimebase) seconds.
Then, your scan period. The scan period will either be the scanInterval, or (if scanInterval is 0, 1 / (number of channels * (sampTimebase * sampInterval)).
The Mth sample of channel N will be sampled at
M*(number of channels * (sampTimebase * sampInterval))
+ N*(sampInterval*sampTimebase)
You might also look at the NI-DAQ Function Reference Help for this function for more information. This is accurate to within the base clock specification in your boards user manual.
Also, how long will it take to pass 75750 points with DaqDBTransfer? You can get a good estimate by using the above formula. Then you can guess there will be a few us of software overhead for the actual transfer.
Also, here are a few links you might find helpful.
Lab-PC+ User Manual
http://digital.ni.com/manuals.nsf/webAdvsearch/53215E9F6E1D0EA78625665E006359B4?OpenDocument&vid=niwc&node=132100_US
NI-DAQ Function Reference Manual for PC Compatibles
http://digital.ni.com/manuals.nsf/webAdvsearch/1F23F2C8FB44D660862566960071D243?
OpenDocument&vid=niwc&node=132100_US
and this is a good one...
Data Acquisition Definitions: Scan Rate, Channel Rate, Sampling Rate, Scan List, Interchannel Delay
http://digital.ni.com/public.nsf/websearch/DBE7AC32661BCF9B86
256AC000682154?OpenDocument
Anyway, I hope this helps!
Russell
Applications Engineer
National Instruments
http://www.ni.com/support

Similar Messages

  • To double buffer or not double buffer..that is the question

    i am not very familiar with double buffering but am reading examples
    of it now. Im not doing animaiton and i dont think im doing alot of
    drawing to the screen but im arookie so its hard to tell. Can you tell
    me if i should implement double buffering by looking at my code. Im
    wondering cuz my webpage is a mess.(http://ktowndrivewaysealing.tripod.com).
    i have trailing components and flickering and i dont know how to fix it.
    thanx
    trin
    import java.applet.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.net.*;
    import java.util.*;
    public class MyProg extends Applet implements ActionListener
         Button btnOne = new Button("Home");
         Button btnTwo = new Button("Asphalt Sealing");
         Button btnThree = new Button("Crack Repairs");
         Button btnFour = new Button("Pressure Washing");
         Button btnFive = new Button("Free Estimates");
         Button btnSix = new Button("Contact Us");
         Font font1= new Font ( "TimesNewRoman",Font.BOLD,12);     
         Font font2=new Font("TimesNewRoman", Font.BOLD, 35);
         Font font3=new Font("TimesNewRoman", Font.BOLD, 25);
         Font font4=new Font("TimesNewRoman",Font.BOLD,20);
         Font font5=new Font("Dialog", Font.BOLD+Font.ITALIC, 16);
         Label title1=new Label("KINGSTON", Label.CENTER);
         Label title2 = new Label("Driveway Sealing", Label.CENTER);
         Label title3=new Label("613-531-3369", Label.CENTER);
         Label caption1=new Label("Your driveway is the first impression your home makes...", Label.CENTER);
         Label caption2=new Label("Make it a Good one.", Label.CENTER);
         Image drivewaypic1;
         Image drivewaypic2;
         URL homeUrl;
         URL asphaltUrl;
         URL crackUrl;
         URL pressureUrl;
         URL freeUrl;
         URL contactUrl;
         public void init()
              setLayout(null);
               try
                   homeUrl = new URL(getCodeBase(),"Home.html");
                   asphaltUrl=new URL(getCodeBase(),"AsphaltHtml.html");
                   crackUrl= new URL(getCodeBase(),"CrackHtml.html");
                   pressureUrl=new URL(getCodeBase(),"PressureHtml.html");
                   freeUrl= new URL(getCodeBase(),"FreeHtml.html");
                   contactUrl= new URL(getCodeBase(),"ContactUsHtml.html");
              catch (MalformedURLException e)
                    return;//maybe i should leave blank..will test later
              drivewaypic1=getImage(getCodeBase(),"drivewaypic1.jpg");
              drivewaypic2=getImage(getCodeBase(),"drivewaypic2.jpg");
              add(btnOne);
              add(btnTwo);
              add(btnThree);
              add(btnFour);
              add(btnFive);
              add(btnSix);
              add(title1);
              add(title2);
              add(title3);
              add(caption1);
              add(caption2);
              btnOne.setFont(font1);
              btnOne.setBounds(15,159,120,40);
              btnOne.setBackground(Color.black);
              btnOne.setForeground(Color.white);
              btnTwo.setFont(font1);
              btnTwo.setBounds(15,199,120,40);
              btnTwo.setBackground(Color.black);
              btnTwo.setForeground(Color.white);
              btnThree.setFont(font1);
              btnThree.setBounds(15,239,120,40);
              btnThree.setBackground(Color.black);
              btnThree.setForeground(Color.white);
              btnFour.setFont(font1);
              btnFour.setBounds(15,279,120,40);
              btnFour.setBackground(Color.black);
              btnFour.setForeground(Color.white);
              btnFive.setFont(font1);
              btnFive.setBounds(15,319,120,40);
              btnFive.setBackground(Color.black);
              btnFive.setForeground(Color.white);
              btnSix.setFont(font1);
              btnSix.setBounds(15,359,120,40);
              btnSix.setBackground(Color.black);
              btnSix.setForeground(Color.white);
              title1.setBounds(5,5,585,33);
              title1.setBackground(Color.lightGray);
              title1.setForeground(Color.black);
              title1.setFont(font3);
              title2.setBounds(5,39,590,36);
              title2.setBackground(Color.black);
              title2.setForeground(Color.white);
              title2.setFont(font2);
              title3.setBounds(5,75,590,30);
              title3.setBackground(Color.lightGray);
              title3.setForeground(Color.black);
              title3.setFont(font4);
              caption1.setBounds(163,113,450,23);
              caption1.setFont(font5);
              caption1.setBackground(Color.lightGray);
              caption1.setForeground(Color.blue);
              caption2.setBounds(163,134,446,23);
              caption2.setFont(font5);
              caption2.setBackground(Color.lightGray);
              caption2.setForeground(Color.blue);
              btnOne.addActionListener(this);
              btnTwo.addActionListener(this);
              btnThree.addActionListener(this);
              btnFour.addActionListener(this);
              btnFive.addActionListener(this);
              btnSix.addActionListener(this);
              btnOne.setActionCommand("Home");
              btnTwo.setActionCommand("Asphalt Sealing");
              btnThree.setActionCommand("Crack Repairs");
              btnFour.setActionCommand("Pressure Washing");
              btnFive.setActionCommand("Free Estimates");
              btnSix.setActionCommand("Contact Us");
         public void actionPerformed (ActionEvent e)
              String s=e.getActionCommand();
              if (s.equals("Home"))
                   getAppletContext().showDocument(homeUrl);
              if (s.equals("Asphalt Sealing"))
                   getAppletContext().showDocument(asphaltUrl);
              if (s.equals("Crack Repairs"))
                   getAppletContext().showDocument(crackUrl);
              if (s.equals("Pressure Washing"))
                   getAppletContext().showDocument(pressureUrl);
              if (s.equals("Free Estimates"))
                   getAppletContext().showDocument(freeUrl);
              if (s.equals("Contact Us"))
                   getAppletContext().showDocument(contactUrl);
         public void paint(Graphics g)
              super.paint(g);
              g.setColor(Color.lightGray);
              g.fillRect(1,1,600,600);
              //g.fillRect(1,1,147,650);
              g.setColor(Color.black);
              g.drawRoundRect(1,1,595,105,10,10);     
              g.drawRoundRect(2,2,593,103,10,10);     
              g.drawRoundRect(3,3,591,101,10,10);     
              g.drawRoundRect(4,4,589,99,10,10);
              g.drawImage(drivewaypic1,170,159,375,225,this);     
              g.drawImage(drivewaypic2,170,386,375,225,this);
              g.drawRoundRect(1,110,150,495,10,10);
              g.drawRoundRect(2,111,148,493,10,10);
              g.drawRoundRect(3,112,146,491,10,10);
              g.drawRoundRect(4,113,144,489,10,10);
         

    It seems you aren't using any animation in this applet, so you won't have to use double buffering... :)

  • How to auto login and pass data (parameter) to ApEx at the same time

    Does anybody know how to automatically login to apex (e.g. from JSP page) and pass a parameter value at the same time? I can use wwv_flow_custom_auth_std to login, I can even choose a page but I cannot pass any data (at least I do not know how). If I use f?p URL syntax I can pass data but there is no way to pass login/password information.
    Any idea? Thanks Jaros

    Jaros -
    You could copy your login page and make the new page "public". On the new page, add a process before the login process that sets the value of application item FSP_AFTER_LOGIN_URL to the report page URL (with the arguments), e.g.,   :FSP_AFTER_LOGIN_URL := 'f?p=&APP_ID.:100:&SESSION.::NO::P100_X,P100_Y:&RPT_VALUE1.,&RPT_VALUE2.';Create application-level items RPT_VALUE1 and RPT_VALUE2 in the application.
    From your external page, POST to this new "login" page, passing values for the username, password, rpt_value1, and rpt_value2 items.
    Let us know if it works.
    Scott

  • SIT Real-time data logging and passing data

    Hello all,
    I am pretty new to LabView real-time, so I just want to confirm a few things. I am also using the Simulation Interface Toolkit.
    Let's take the Sinewave.vi from the SIT examples. I have modified it to use sinewave.dll, and run on PXI-8101. If my understanding is correct, when I click "Play", the entire Sinewave.vi is deloyed into PXI-8101, and therefore the entire VI is running at the same pace. The front panel I see on my desktop is slower snapshots of what is actually happening?
    1) Let's pretend now that the sinewave model is time critical and must run every 10ms. How do I do that? I have noticed that within the "SIT_Indicator_Indices" loop, there is a Wait 50ms block. Is that accurate?
    2) I have also added a time elapsed block that will change the Frequency and Amplitude inputs as a function of time. I made them update every 2ms. What clock are we running on? If my sinewave.mdl suddenly calculate integration (time dependent), can I use that elapsed time block as my timer to pass into the model?
    3) How fast is the sinewave.vi running anyways?
    4) Let's say I want a log of the sinewave output (a data point every 10ms). I don't need the log in real-time, I just want to do some analysis on it later. How do I do it?
    Thanks.
    Attachments:
    Sine Wave.vi ‏104 KB

    Hi Bladhart,
    When running the in the Development Environment (pressing the run button on the Real-Time vi) there will be an extra thread to handle the front panel you see. This thread will be handled just like any other thread in Real-Time and will take processor time, thus slowing down your entire application to a certain extent.  
    1. You would need to make sure everthing inside the loop can execute within 10ms and change the wait time to 10ms. Or you can use a timed loop set to run every 10ms and get rid of the wait time but again you would need to ensure everything in the loop can execute in under 10ms.
    2. The elapsed time should be running off the Real-Time system clock. 
    3. The time that the Sinewave.vi is running is system dependent, there is no set speed.
    4. You can log the data by saving to a *.tdms file. You can then use the data from the *.tdms file to do processing later. 
    <Brian A | Applications Engineering | National Instruments> 

  • How to pass data from a C++ program to LV to plot the data real time?

    Hello,
    I am writing a C++ program in which I need to plot the data in real
    time. I would like to pass data from my C++ program to LabView in order
    to perfrom the plotting. I was wondering if this is possible. If so,
    how can it be done? .
    Thank You

    There are several C++ examples and application notes here.

  • Passing data to subpanel

    I have an architecture question for the labview 8.2
    community...
    I have two indicators that I'll be passing data to and I would like to create a
    single picture (png, jpg, ect) of both indicators. The key aspects is that the
    data to these indicators will be changing and it's not until the end user
    clicks "snap picture" on the front panel when the picture is taken.
    I'm leaning towards creating a subpanel on the main vi then passing the data by
    "call by reference" to a subvi. When the GUI event happens in the
    event structure a "Get Image" of the subpanel is taken.
    I have two questions.
    1) I haven't gotten data to update properly in the subvi.  The "Get
    Image" always snaps a picture of the default vi and without the
    values.  What's the best way to pass the data in?
    2) Is their a better architecture  to use for this goal?  I'm open to
    other ideas it their is a more efficient and streamlined approach.
    Thanks.

    > I have two questions.
    > 1) I haven't gotten data to update properly in the subvi.&nbsp; The "Get
    > Image" always snaps a picture of the default vi and without the
    > values.&nbsp; What's the best way to pass the data in?
    The Set Value method should work. Also, if the VI is not looping, you can
    simply put it's panel in the sub panel, and call the VI like any ordinairy
    VI, using it's connector pane to pass data. That is the best, if it means
    "easiest". If best means the most scalable, you'll need a more elaborated
    architecture (see 2)).
    > 2) Is their a better architecture&nbsp; to use for this goal?&nbsp; I'm
    open to
    > other ideas it their is a more efficient and streamlined approach.
    >
    Yes. There probably are better architectures. Most of the time I create
    seperated user events for each seperate type of info I need to communicate.
    I put the user event in a buffer, and each dynamic VI that needs that info,
    registers for it's events. Often those VI's are in subpanels, but sometimes
    they are VI templates, so I can start multiple instances. Sometimes there
    front panels aren't visible at all, for instance DAQ VI's. I don't mean to
    say this architecture is the best, but it has been great for all my projects
    so far.
    Any good architecture will need a lot of effort and experience. Not only
    experience with LabVIEW, but also with the kind of projects it is made for.
    That is why thee is no "best" or "standard" architecture. A power plant
    needs another architecture then a word processing program...
    Regards,
    Wiebe.

  • Passing data to labels

    Hello,
    I'm trying to pass the data element from a radio button into
    a text label (to display a correct answer in a quiz). The labels
    are on the next frame. So far, I can only get the labels to display
    true or false (and I'm not even sure why).
    I'd be grateful for any help.
    Thanks.

    > I have two questions.
    > 1) I haven't gotten data to update properly in the subvi.&nbsp; The "Get
    > Image" always snaps a picture of the default vi and without the
    > values.&nbsp; What's the best way to pass the data in?
    The Set Value method should work. Also, if the VI is not looping, you can
    simply put it's panel in the sub panel, and call the VI like any ordinairy
    VI, using it's connector pane to pass data. That is the best, if it means
    "easiest". If best means the most scalable, you'll need a more elaborated
    architecture (see 2)).
    > 2) Is their a better architecture&nbsp; to use for this goal?&nbsp; I'm
    open to
    > other ideas it their is a more efficient and streamlined approach.
    >
    Yes. There probably are better architectures. Most of the time I create
    seperated user events for each seperate type of info I need to communicate.
    I put the user event in a buffer, and each dynamic VI that needs that info,
    registers for it's events. Often those VI's are in subpanels, but sometimes
    they are VI templates, so I can start multiple instances. Sometimes there
    front panels aren't visible at all, for instance DAQ VI's. I don't mean to
    say this architecture is the best, but it has been great for all my projects
    so far.
    Any good architecture will need a lot of effort and experience. Not only
    experience with LabVIEW, but also with the kind of projects it is made for.
    That is why thee is no "best" or "standard" architecture. A power plant
    needs another architecture then a word processing program...
    Regards,
    Wiebe.

  • Passing data to SoapHandler

    Hi,
    Can anyout point out how to pass a object from a web service client class to the custom soap handler. My client class (WSClient) registers a custom soap handler (MySoapHandler) which extends GenericHandler.
    public class WSClient{
    QName port = new QName(this.getNamespaceUri(), this.getPortName());
    List list = service.getHandlerRegistry().getHandlerChain(port);
    list.add(new HandlerInfo(MYSoapHandler.class, config , null));
    I know I can pass initial values via the config object at the time of registering the MYSoapHandler. But the functionality here is to pass a HashMap object from WSClient to the MYSoapHandler for every web service invocation. This hashmap object information is not a part of the soap envelop.
    The handler have to recieve this object and construct the SoapHeader based on the data provided in the HashMap. This hashmap object will have different values for every web-service invocation.
    Please throw me some help on this.

    > I have two questions.
    > 1) I haven't gotten data to update properly in the subvi.&nbsp; The "Get
    > Image" always snaps a picture of the default vi and without the
    > values.&nbsp; What's the best way to pass the data in?
    The Set Value method should work. Also, if the VI is not looping, you can
    simply put it's panel in the sub panel, and call the VI like any ordinairy
    VI, using it's connector pane to pass data. That is the best, if it means
    "easiest". If best means the most scalable, you'll need a more elaborated
    architecture (see 2)).
    > 2) Is their a better architecture&nbsp; to use for this goal?&nbsp; I'm
    open to
    > other ideas it their is a more efficient and streamlined approach.
    >
    Yes. There probably are better architectures. Most of the time I create
    seperated user events for each seperate type of info I need to communicate.
    I put the user event in a buffer, and each dynamic VI that needs that info,
    registers for it's events. Often those VI's are in subpanels, but sometimes
    they are VI templates, so I can start multiple instances. Sometimes there
    front panels aren't visible at all, for instance DAQ VI's. I don't mean to
    say this architecture is the best, but it has been great for all my projects
    so far.
    Any good architecture will need a lot of effort and experience. Not only
    experience with LabVIEW, but also with the kind of projects it is made for.
    That is why thee is no "best" or "standard" architecture. A power plant
    needs another architecture then a word processing program...
    Regards,
    Wiebe.

  • Passing date parameter from prompt

    Hi experts
    I am getting some problem while passing date from a dashboard prompt.
    In RPD i have changed the date column properties as DATE only so that i will get the DATE part of the data not the time stamp.
    Now in the dashboard prompt i added a prompt for the date column.
    I initialized the date prompt with a server variable of sysdate
    when i am running the dashboard i am getting default value in the prompt(04/15/2011)
    when i am changing the date it is selected as(04/15/2011)
    but when i am clicking the 'Go' button the date is converting to 2011-04-15 00:00:00 due to which my report is not running and i am getting error as
    View Display Error
    A date value was expected (received "2011-04-15 00:00:00").
    Error Details
    Error Codes: QABPH2PO
    can anyone help me to pass only date part
    thanks in advance
    regards
    Gourisankar

    Hi J / Srikanth
    Sorry to restart the thread again.
    As we discussed i have downloaded the patch and applied to my windows 32 bit machine.
    But now when i run the report the report is running only for the default value(Server Variable) which is specified to the prompt. when i change the date there is no effect to the report.
    When i drill down to the report i found that the date column(is prompted) is changed to teh server variable name which is might be the cause.
    any input on this???
    regards
    Gourisankar

  • I need to pass data from an Access database to Teststand by using the built in Data step types(open data

    base /open SQL Statement etc) the first time i defined the system everything was fine but when i changed the Database (using M.S.Access) the " open SQL Statement" it would show the tables but not thier columns ,I"m using win98 sec edition / Teststand 1.0.1i need to pass data from an Access database to Teststand by using the built in Data step types(open database /open SQL Statement etc) the first time i defined the system everything was fine but when i changed the Database (using M.S.Access) the " open SQL Statement" it would show the tables but not thier columns ,I"m using win98 sec edition / Teststand 1.0.1
    When I tried the same thing on another cmputer the same thing
    happend
    appreiciate u"r help

    base /open SQL Statement etc) the first time i defined the system everything was fine but when i changed the Database (using M.S.Access) the " open SQL Statement" it would show the tables but not thier columns ,I"m using win98 sec edition / Teststand 1.0.1Hello Kitty -
    Certainly it is unusual that you can still see the tables available in your MS Access database but cannot see the columns? I am assuming you are configuring an Open Statement step and are trying to use the ring-control to select columns from your table?
    Can you tell me more about the changes you made to your file when you 'changed' it with MS Access? What version of Access are you using? What happens if you try and manually type in an 'Open Statement Dialog's SQL string such as...
    "SELECT UUT_RESULT.TEST_SOCKET_INDEX, UUT_RESULT.UUT_STATUS, UUT_RESULT.START_DATE_TIME FROM UUT_RESULT"
    Is it able to find the columns even if it can't display them? I am worried that maybe you are using a version of MS Access that is too new for the version of TestSt
    and you are running. Has anything else changed aside from the file you are editing?
    Regards,
    -Elaine R.
    National Instruments
    http://www.ni.com/ask

  • Passing data from one frame to another frame

    hello all, i am having a problem with passing data from one frame from another. I have a main frame when you click on connect button it display the second frame(class) that has 2 text fields and 2 buttons. When i click on connect it check if the data is correct. If the data is correct i want that frame to close and pass the data back to main frame. How can i do that.
    thank you

    hello all, i am having a problem with passing data
    from one frame from another. I have a main frame when
    you click on connect button it display the second
    frame(class) that has 2 text fields and 2 buttons.
    When i click on connect it check if the data is
    correct. If the data is correct i want that frame to
    close and pass the data back to main frame. How can
    i do that.
    thank you
    the original problem sounded like an ideal opportunity to use Modal Dialog. if you want one frame to display another to get user input then you need to stop the method in the main frame from executing until you recieve a valid input.
    you can use your own class and keep all of the components that you have in the connect frame but you would have to extend JDialog instead of JFrame.
    there is a way around it!
    if you must use JFrame for both, then you need to have access to the main frame in the connect frame, maybe pass the pointer to the constructor??
    anyway, when the connect frame is done with its duties, you have to use the pointer to call another method in the main frame that will continue the process. otherwise main frame doesn't know when connect frame is done and by that time, the method in main frame that instantiated the connect frame has long since died.
    also, it allows things to happen in the other window that you may not want to happen until the connect frame is done
    typically users of software start clicking around on things and you could have three or four connect frames going at the same time
    it's really best to use a Modal Dialog, it really can look just like a JFrame!!!!!!!!!!!!!!

  • Is it possible to pass data from a subVI before that subVI has finished executing?

    Basically this is my problem:
    1.  I have a subVI which contains a loop that reads data from a device for a specified amount of time.
    2.  I would like to graph this data in real time on the front panel of the main VI.
    So is there a way to pass data from inside the loop of my subVI to the graph of my main VI before the subVI has finished executing, and if so how do I do this?
    Thank you.

    How about using a global variable or a Queue?

  • Scheduling a report in background and passing data for processing

    Hi all,
    Using code (in a report1) ...i  want to execute a report (report2) in background.....but at the same time i want to pass data (an internal table and a variable) to that report2.
    is it possible to pass data like internal table to a executable report and at the same time pass the data to that report.
    Thanks in advance.
    Thanks and Regards,
    Sushil.

    hi
    regarding  Scheduling a report in background check the below thread
    SCHEDULE THE ZREPORT IN BACKGROUND DYNAMICALLY
    regards
    chandra

  • Problem in passing data from 1 screen to another using BBP_DOC_CHANGE_BADI.

    Hi Experts,
    i am new to the SRM, i am facing problem in passing data from one screen to another.
    my requirement is that when we select one shopping cart and press the PROPOSE SOURCES OF SUPPLY button, we will fetch all the contracts that are attached to the shopping cart.
    we have implemented a BADI implementation of BBP_SOS_BADI (method BBP_SOS_CHECK) for passing some changed values to the contracts of the shopping cart into the popup screen that is displayed when we press PROPOSE SOURCES OF SUPPLY button and when we select any contract and press ASSIGN ONLY button in the popup screen the badi BBP_DOC_CHANGE_BADI is triggered.
    i have implemented another BADI implementation of BBP_DOC_CHANGE_BADI for fetching the selected contract and pass the values to another screen, but the problem is that when we select one contract and press the assign only button we are fetching the wrong contract number ( that is in the BADI method BB_SC_CHANGE parameter IT_ITEM we are fetching the wrong contract), if we again do the same procedure for the second time we are getting the correct contract.
    i am unable to understand why we are getting the wrong contract in the first time( that is we are getting contract other than the selected one).
    as per my understanding i think when we are passing data to the popup screen using BBP_DOC_CHANGE_BADI we are not updating the shopping cart with the changed data.
    can anyone tell me how we can update the SHOPPING CART with the changed contracts data, i have used BBP_PD_SC_UPDATE, BBP_PD_SC_SAVE and other shopping cart FM but nothing is happening.
    Thanks
    Tanveer

    Hello,
    What version of SRM are you on?  Have you check for OSS Notes?  I have had trouble with BBP_DOC_CHANGE_BADI but it was because of other issues.  The BADI works pretty well and it is called almost every time something happens to the shopping cart.
    I have noticed that sometimes that values are not changed til the second calling of the BADI.  I have yet understand why but I think it has to do with prompt processing. Usually, we train our requisitioners to click the 'Check'  button to flush things out.
    I don't know if I was helpful.... another thought.... could there be an error caught by BBP_DOC_CHECK_BADI that is preventing change in BBP_DOC_CHANGE_BADI?
    Regards, Dean.

  • Passing data from one bsp application to another

    Hi,
    I have few queries that most of you would have done in ur projects:
    1. I want to pass data from one bsp application to another:
    eg based upon selected row of table view which populates material no and descriprion to another application which open the entire material master data.
    Now, i have both the pages in diff bsp applications in place but unable to pass the selected material code to the second bsp application.
    Had it been two different pages of same application I was able to achieve it with set parameter()
    2. To stop the application from reprcessing the data:
    eg: Suppose I have a bsp page where user fill details of a customer and on submitinng the details a customer is created in background and the entire page is disabled by my code. Even now if the user press refresh (F5) button then another customer gets created in the background. So basically i want to avoid the reprocess of the onSubmit event
    Few lines of sample code would be very helpful.
    Best Regards,
    Saurabh Tripathi

    Hi,
    When I am writing the following code in appl1/page1:
            export abc from transactionID
            to data buffer lv_page_data.
            CALL METHOD CL_BSP_SERVER_SIDE_COOKIE=>SET_SERVER_COOKIE
              EXPORTING
                NAME                  = 'TRANSACTIONID'
                APPLICATION_NAME      = RUNTIME->application_name
                APPLICATION_NAMESPACE = RUNTIME->application_namespace
                USERNAME              = ls_name
                SESSION_ID            = runtime->session_id
                DATA_VALUE            = lv_page_data
                DATA_NAME             = 'lv_page_data'
    and following code in appl2/page2:
      CALL METHOD CL_BSP_SERVER_SIDE_COOKIE=>GET_SERVER_COOKIE
        EXPORTING
          NAME                  = 'TRANSACTIONID'
          APPLICATION_NAME      = RUNTIME->application_name
          APPLICATION_NAMESPACE = RUNTIME->application_namespace
          USERNAME              = ls_name
          SESSION_ID            = runtime->session_id
          DATA_NAME             = 'lv_page_data'
        CHANGING
          DATA_VALUE            = lv_page_data
       IF lv_page_data IS NOT INITIAL.
         IMPORT abc to transactionid
           FROM data buffer lv_page_data.
       ENDIF.
    still the code doesn't work. Please explain and guide
    Best Regards,
    Saurabh Tripathi

Maybe you are looking for