Assign the second macro to the original initial display's startup macro setting

Now on to the detailed steps:

DataStore Plus Step 1:

The first step to using DataStore Plus is to create a new graphic display in your project to “host” this ActiveX. To do so, create a new graphic display with these display settings:

On the General Tab

On Top

Cannot be replaced

Display Number 999

Maximum Tag Update Rate of .25

Specify Size of 400 width and 400 height

X and Y position of -401 and -401 (off the visible screen)

Note: Below is a picture of my display settings:

Explanation of above settings:

Since we want the DataStore Plus ActiveX to run while the PVPlus project is running, we need to keep the display it's on open at all times. One way to accomplish this is to set the display as “always on top,” and “cannot be replaced.” However, we don't actually need to see this display, so we also position it out of the visible pixel range with a negative X Y position.

DataStore Plus Step 2:

Now that our graphic display is created, we need to add the DataStore Plus ActiveX to it. To do this, choose ActiveX from the Objects Menu:

Click and drag a box on your display. When you release the mouse, you'll be prompted to choose an ActiveX – choose the ME DataStore Plus ActiveX and press OK:

This is now what your graphic display screen should look like:

Next, double click on the DataStore Plus object and set the general settings to meet your preferences (mine are shown below:)

Do the same on the Advanced tab (my advanced settings are shown below:)

Finally, on the Connections Tab you'll need to fill in the “File Location” (includes file name and CSV extension,) “Trigger” (this acts as an enable,) and add at least one real or string tag (my settings are shown below:)

NOTE: “FileLocation” can either be a String Tag which contains the full path and file name for your CSV file, OR it can be the actual full path and filename included within quotes as shown below:

Next press Apply and OK, then save your screen with a memorable name (I saved mine as DataStore Plus)

DataStore Plus Step 3:

In this step you need to set your DataStore Plus display as the new initial display, after recording what the initial display is currently set to. This is done in “Startup”

DataStore Plus Step 4:

Now that our DataStore Plus display is setup as the initial display, it will launch when the project runs. However, if we do nothing else we'll be left with a blank gray screen.

So our next step is to setup our DataStore Plus display to launch our original initial display. To do this, we first need to create a new HMI tag as shown below:

Now let's set our new “RemoteDisplayTag” to be the Global Connection's “remote display number” tag as shown below:

DataStore Plus Step 5:

Now we need to create two macro's. One to change our “RemoteDisplayTag” to the number of our original initial graphic display (in my case “1”.) And another to reset it back to “0” so the operator can navigate to other displays.

Below is the first of the two macros we must create. This is the one our DataStore Plus screen will trigger after opening, to then trigger the opening of our original initial display.

Note: Changing the tag associated with the Global Connection for “remote display number” to “1” will cause the system to display the graphic display with that corresponding display number. However, the operator will not be able to navigate away from that screen until the “remote display number” is changed back to “0”

Note: Always be sure when implementing “remote display number” that all your displays have a unique “display number” in display settings.

Below is the second macro we must create. It will be launched by our original initial display to reset the “remote display number” tag to “0” so the operator can navigate to other displays:

Our final step is to set our two displays to run the appropriate macros.

First, on our DataStore Plus display we need to open the display settings. Then on the Behavior Tab we add our “Macro_GotoMainScreen” to the Macro Startup field as shown below. When done press OK, then save and close the display:

Next, we need to open our original initial display and on the Behavior Tab in the display settings we need to add “Macro_ResetRemoteDisplay” to the Macro Startup field as shown below. When done press OK, then save and close the display:

At this point we've successfully added the DataStore Plus ActiveX to our project. Once we run our project we can open Windows explorer to look for our next CSV datalog file. Just navigate Windows Explorer to the location specified in the DataStore Plus ActiveX's “FileLocation” property, and you should see the first CSV log file.

If you open the file in Microsoft Excel, you should find data similar to what you see in my file below:

That's it for DataStore Plus ActiveX step-by-step. If you have any questions or comments please don't hesitate to let us know by either using the “post a comment or question” link below, or by contacting us directly using the “Contact” link at the top of this page.

I would like to know if the methods outlined in this thread are so data captured historically could be sent to ao USB or SD Card for extraction later via csv file format. Is this true? How would you be able to remove the device when you want to see the data without harming the process?
Thank you
Carissa

Just wanted to give whoever is reading this a heads up. I ran into this in the field, and found that these ActiveX objects are NOT intended to be used for "On Demand" logging, meaning they are not intended for the PLC to actually trigger the individual logs. It was designed to be a purely TIME-BASED logging setup, where the "Enable" is supposed to be left on for long periods of time. The reason for this is that if the Enable is not set during the midnight transition, the object will not make a new file for the next day, but instead continue writing the log entries in the previous day's file, until the log enable just so happens to be enabled during that transition, and only THEN will it create a new file. I wrestled with this for months, unable to explain why the files would seemingly just randomly generate, but there would be several days to several weeks' worth of entries in a single day's file. There was no rhyme or reason to when the system would generate a new file, and as far as I could tell, I had it set to start a new file every day, so my work was done.
Then, finally, I found the technote that mentions the midnight transition, and how logging has to be enabled during this in order to facilitate the file name change. I was logging at intervals that included midnight anyway, but since the time between the HMI and PLC is not always perfectly synced, I just extended the time to ensure they'd be on at midnight. Unfortunately, I would create situations where there would be "multiple logs" for certain times. At any rate, it wasn't a "clean" solution.
But, I did find a workaround that, as far as I have lab tested so far, seems to work well. In a nutshell, you take the file name control away from the ActiveX Object and give it to the PLC. By periodically (about once an hour) syncronizing my PLC and HMI clocks, I can make sure new files are created and the entries are stored in the correct day flawlessly and cleanly. In the PLC, I create several string tags and, using conversion and concatenating instructions, "assemble" the log file name in the program, based on the current date. I then point the field in the ActiveX setup to that tag instead of typing it out. This also gives me the option to easily change where the file goes on the fly, in case my customer connects the HMI to their network and wants those log files to go onto a server folder, without having to edit the HMI program.
I tested it out in the office here, and it worked wonderfully. I was able to change my PC's date, and it created a new file. I even changed the date back, and the object would simply append the existing file with the new entries.
If you're using this to log data on an "On Demand" basis, this is the way to do it.

Halo.
I am trying the steps above using Factory Talk View V8.1 but I am unable to complete steps 3 through 5 because I am not seeing other options on the explorer such as Startup and Global Connection. Please assist.

Hey Bellgast,
While this article is from 2013, ViewStudio ME 8.1 still has Startup and Global Connections.
Are you trying to use it with ViewSE? Datastore Plus will work with ViewSE, but this procedure won't as it's ViewME specific.
Sincerely,
Shawn Tierney,
Instructor, The Automation School

Bellgast,
Well, if you are sure you don't want to use the built-in Data Log features of ViewSE you can use the If you are familiar with ViewSE, create a screen, add the ActiveX to it, setup MAlso keep in mind that if you are running a client server system, the Best of luck!
Shawn Tierney,
Instructor, The Automation School
PS - If you're not familiar enough with ViewSE to follow the above, you may want to consider my ViewSE course here: https://theautomationschool.com/courses/viewse-basics-course/

Good Morning Shawn,
I absolutely love your topics and posts - very informative!
I'm writing to get more information about choosing DataStore Plus vs Custom Data Storage on my Panelview Plus 7.
My goal is to log the values of maybe fifteen tags into longterm storage. The data needs to be exportable to a CSV so I'm leaning towards Custom vs Standard for the path. I'm a bit stuck however on whether using Custom Data Storage via a USB or DataStore Plus is the way to go. I thank you for your previous posts, https://theautomationblog.com/datastore-plus-step-by-step-setup-in-factorytalk-viewstudio/
and https://theautomationblog.com/how-to-automatically-run-a-usb-flash-drive-script-on-the-panelview-plus/
I am not sure I completely understand how to set up the script for the USB export, can you describe this another way?
Can you elaborate more on (1) what, if any, action would need to be done when removing the USB and plugging it back in? Does any process need to be stopped, paused, restarted etc? Can you also describe (2) how much data exactly could be stored on the USB? For example, if I set up a CSV to be made daily, would it do so every day until the USB was filled?
Again, I can't thank you enough for being such a great resource!
All the best,
Carissa Galgano

Good morning Carissa,
Sorry I missed your post. I'm sure at this point you've probably found your answers, but for those who come after here's some food for thought:
1) I've never run into an issue "copying" a CSV file that was actively being written to, and that is what I would suggest you do in your script - copy not move the csv log files to the USB Memory Stick.
I also add "echo" text to my autorun scripts to let the operator know when the process has started, as well as when it's done to "count to ten" before removing the memory card with the script on it.
2) The average USB Memory Stick can hold hundreds of thousands of average CSV files. That said, to know for sure if yours will fit, you'll want to log the average amount of data over an average time, and then multiply the resulting file size by the number you need to store on your memory card to determine how big it needs to be.
Hope this helps,
Shawn Tierney,
Instructor at The Automation School

I think the easiest way would be to turn on the FTP server. Then you can access your PVPlus 6 CSV files from Explorer by typing in the IP address of your PVPlus 6, like ftp://192.168.1.20 (assuming your PVPlus6 is at that address.)

You may have to tweak the FTP server so it shares the folder you currently save your CSV files to, or change where you save the CSV files to match the default FTP server folder.

Other options would including saving the CSV files to the external storage (i.e. an SD Card plugged into the back of the PVPlus 6) or across your network to a network shared folder.

Can I have a remote file location? I tried this and get error message cannot set the log file location for DataStore Plus. Cause; invalid file path. I’m using 192.168.1.37″c:userspublicpublic documentsDataStorePlus_log.csv

If you are using a PVPlus 6, the easiest way to choose your “File Location” – the destination for the CSV files – is to exit to the CE desktop and browse the internal storage with Windows Explorer. Here’s some sample paths:

The folder where the .MER files are stored is:
Application DataRockwell SoftwareRSViewME

The root of a USB memory stick installed in the PVPlus would be:
USB Storage

If you want the CSV files to be stored in the default FTP location, open the control panel on the PVPlus 6 and edit the FTP server to find/change which folder it’s serving up.

If you want the CSV files stored in a network share, first browse to the network share on your PC, and then use the same path for the CSV “file location” (like MyPCMySharedFolder)

I am using this to log 17 floats and 2 strings. This control logs 100 floats and 50 strings. Can you limit the amount of connections so that the .csv file doesn’t have a bunch of blank columns between floats and strings?

Also, is there a way to trigger a new log file with an external tag trigger?

Sorry for the delay but work has been brutal. I did check my system the other day and I didn’t have any extra columns, only the few for the tags I was logging. Didn’t get to check on the tag triggered snapshot – I’ll try and look tomorrow,

I am having the same issue, all 100 floats and 50 strings are logged to the CSV file even though only a portion of these are used. Also, all of the column headers are generic, e.g. “Str 1”, “Alg 2 “, etc. I am using FTVS and firmware 8.0.

So you can provide a path for the logger to log too. I’m assuming you could use a network share to log data too, and that network share could be a folder on your laptop. However, if your laptop was off no data could be logged.

So, I think it would be better to have the PVP6 log to it’s own FTP server folder, and then you could just copy the files off it via FTP when you can them.

Hi Shawn,
I have an older panelview plus 600 (2711P-T6C20D) which I believe was replaced with (2711P-T6C20D8). Would i need to install the older version of activex for this one and if so what is involved in doing so.
Thanks,

Great question! While all PanelView Plus 6 models allow access to the Windows CE desktop, and come pre-installed with all the available add-ons, the same is not true with the older PanelView Plus models.

To use any of the add-on ActiveX’s, like the DataStorePlus ActiveX, on older models you need a CE version like the PanelView Plus CE or VersaView CE. Unfortunately, neither came in the 6″ size.

If you did have a “CE” model (or pre-6.0 PC ViewME runtime) then you would get the ActiveX files from Rockwell’s Knowbase.

The pre-6.0 DataStore Plus ActiveX specifically can be downloaded using the link below (requires Rockwell support contract:)

Hello Shawn, Is csv file automatically created after we have set me file location on data store plus or we should create a csv file? Currently, I am looking for solution how to record data log of trend by using sd card (But not AB SD Card)? Thanks and sorry for my bad english

The CSV is created automatically by the DataStore Plus activeX, and the good news is if you remove the SD card and put in a new one, the DataStore Plus will create a new CSV file on the new card, and keep on logging.

The build-in Trend uses a totally different logging mechanism, the “DataLog,” and while you can have it’s compressed file saved to the SD card too, there are a couple of disadvantages to doing so. First, if you remove or replace the SD card while the project is running, you’ll need to reboot the PVPlus to get it to start logging again. Second, you need a free utility from AB.com to extract the data from the compressed DataLog file.

What I recommend is (a) use the DataLog for “historical trending”, and also (b) use the DataStore Plus activeX to create user friendly CSV data files.

The version 6 panels are web servers by default. Any computer can access the panel with a web browser by entering the IP address in the address bar. Unfortunately, the internal memory is limited. The server can be setup to have “Storage Card2” as the root directory.

First, enter the Windows CE from the terminal settings. Enter the Desktop Access Setup screen. Select “Allow” and enter “password” for the password. Press OK and from the main terminal screen, select Exit. The Windows CE desktop should be displayed.

It helps to have a usb mouse and keyboard to complete the next steps. If not, use a stylus.

Select Start and Run. Enter regedce

Note: Tread lightly in this area.

Expand HKEY_LOCAL_MACHINE
Expand Comm
Expand HTTPD
Expand VROOTS

Select the folder listed as “/”, The Default path may be setup as WindowsWWW. Doubleclick the value of Default and change to Storage Card2.

Other default settings can be set here, but it is recommended to review these options before making unnecessary changes. Click the X to exit out of the registry edit screen.

Select Start, Settings and Control Panel. Doubleclick on Services and verify that WEb Server is green. There are other services that may be helpful also.

Doubleclick on Server Config and enter Web Server tab. Check the “Allow Directory Browsing” (to view list of csv files from browser) and set the Default Web Page to a customized html file that is loaded along with the csv files on the Storage Card. Example wwwindex.html Click OK and select “yes” to restart services.

Check the connection by entering the Panel’s IP address in a browser. Even without a start page, the server will list the files.

Re-Enter the ME Terminal and set the Desktop Access to Disallow. You have to re-enter the password information and provide challenge questions. It is recommended to still use “password” if there are other owners.

I need to log 6 values daily. These values will change once a day. So I want to log by using on value change method. I also need to export the log to a csv file and copy the csv file to a usb stick. It seems that DataStorePlus active X only support periodic log and not on change log. Any suggestion for doing this on a PVplus 6. Thanks

The built-in PVPlus Datalog function can log on change, and there is a free utility to convert it to a CSV file.

You can also choose a custom file path for that log file, but it might be better to try an autorun.bat file on your USB memory stick to automatically copy the datalog file from it’s original location to the memory stick.

That is a great question – I don’t think there is anyway to do this via the DataStore Plus ActiveX detailed above. Because of this we’ll often put an Autorun.bat file on the USB stick so when it’s inserted it copies all the datalogs from the PVPlus to itself.

If I wanted to log a single event on demand can I turn the trigger on and off. When The trigger goes high and the data is logged at that instance. Then turn it off when I get the Handshake bit back? Is this how you would log a single event? I do not want a run data logging continuously because it will give me multiple transactions of then same part data. Looking for something like the snapshot command in SE.

The “trigger” connection does enable or disable all logging by the DataStore Plus activeX.

I imagine if you set, “Log periodically every” to 10 seconds, and then only turned on the “trigger” connection for one or two seconds (just long enough for the PVPlus6 to see it on) you would only get 1 row of data for each on pulse of the trigger, similar to the snapshot in ViewSE/View32.

However, I haven’t tried this myself, so I’m not sure if any unforeseen issues will arise. If you do try it I’d be interested in hearing how you make out,

After Trying this I ended up setting the screen refresh rate to .25 seconds, the periodic scan to 1 second. Once I set the Trigger bit it recorded the reading and set the handshake bit to one. Then it reset the trigger to zero and the handshake bit to zero on its own. Seems to work well for my needs.

Dont know if you can answer this or not, but I have an application in 5.10, that every time I try to restore the runtime .mer file back to project .apa file it hangs when it tries to process Data_Store_Plus graphic screen and gives me the message unable to restore project. Check that the disk is not full or if the project already exist. I actually was able to get one of the project files from the controls company that built it, except there were some field revisions from an employee that no longer worked at the company. Anyhow when trying to build the runtime it tells me that the the Data_Store_Plus display couldn’t be compiled and ask if I want to continue anyhow, but it leads to an inoperable runtime file. Any insight on why I would be having this problem? I am trying to rebuild with a borrowed laptop with FTV SE 6.10. Thanks in advanced. Howard

Hello, thanks for getting back to me so quickly. If I try to restore the runtime application (Mer) that I pulled off the PVP-1000 it fails with the messages I posted above. I actually was able to get ahold of a slightly older revision of the program that is in the PVP from the company who wrote the application. I can restore the archive but when try to compile the runtime I get “Unable to copmpile the file ‘C:….Dl9076GfxPOPUP_DATA_STORE_PLUS.Gfx’ into the runtime file. Would you like to continue creating the runtime file anyway? If I choose yes, I get a greyed out screen that says “Unable to open the inital display ‘.POPUP_DATA_STORE_PLUS.Gfx’.Please check to see if the display is valid and try running this project again. Aborting runtime exicution. Also, I dont know if there is any signifigance to this or not, but at times when rebooting the PVP-1000’s I get “No Screen Selected” on the display. and I cannot close it out. I have to rebbot the display and choose the runtime file in order to get the PVP-1000 to start. Thanks again for your assistance. Howard

On the specific issue of not being able to compile the runtime, specifically the POPUP_DATA_STORE_PLUS.GFX, I think the easiest thing to try would be to deleted and recreate that graphic display in 6.1 (I also suggest using the application manager to make a copy of your application first, and editing the copy)

I don’t think I’ve run into this myself because I keep a copy of v5.1 around on a VMware image, but it does seem like version 6.1 with the latest patch should work as expected. However, recreating the popup with all the same settings may be a quicker fix.

OK thanks. I will try. I will also try to get my hands on 5.1. I am not sure if it is 5 or 5.1. For Sure the firmware is 5.1. This has become a quest that I want to be able to de-compile the runtime that I have in the PVP1000 because I know there are others that have had the same problem. I would like to be able to solve it, to help others. Thanks for your time. If I solve it i’ll let you know. Howard

I’m not sure windows is a valid directory (I don’t have a PVP6 here atm,) so turning on ECHO and trying to CD should tell us if it is. The DIR will tell us if there is anything in the folder, and if it’s a system folder that could also be an issue?

You might try to create a new folder just for your CSV files – you could do it with a script like:

CDApplication Data

MD DataLogs

You might also need the leading “” in the ActiveX log path, like “Application DataDataLogs”

Well, Shawn here’s what I did….I did have to change things around a little. The CSV files were there, and worked as your instructions above. There is a Windows directory in the PV+. What I did to make things a little easier, was to activate the desktop, by going into Terminal settings and then Desktop Access Management and then NOT setting the password and the challenge question (unlock).

Then when clicked on OK button the PV+ it brought me to a windows desktop. i connected a USB mouse and I went into My Device, then into the directory called Windows, looked for any CSV files and found two of them, the files were named in the proper date format as noted in your step 2 above, where under the General Tab, you set the file to change daily at midnight, which is what exactly what this did last night at midnight!!!

I edited the AutoRun to the following:

@echo on

cdwindows

copy “Windows*.csv” “USB Storage”

This copied the two files to my USB thumb drive, which i then was able to open up on my laptop.

Thanks for your help and OLD DOS suggestions….Its been awhile I used these OLD DOS commands…kinda brought back some memories!!

I think the easiest way to find the new SD card’s path would be to plug it in and then browse to it like you did before by exiting to the desktop.

I don’t have a unit here atm so I can’t look myself, but I think it’s something like USB Storage 2

Then just updated the ActiveX settings with the new path and you’re good to go!

NOTE: I have a client who ran into an issue putting the optional “template” file on the removable media. While logging to the external storage directly works well, and survives removal and replacement of the SD card, the activeX never expects the template file to disappear (if that feature is used) – if it doesn’t find it when it boots it can lockup. So long story short, if you use the template feature, it may be best to store the template on the PVP6 itself.

Shawn,
Was able to successfully get the file created on the SD card but every time i remove the SD card from the PV+ and install it on my card reader, to open file up on my laptop, (WIN 7) it wants to format the SD card even though I already formatted it. My IT guy thinks that the PV + is causing this….has this ever happened before, and is there a solution?

BTW – I tried this with 2 different SD cards, both 64 GB, both do the same thing….I might also add that if I do format the SD card, then the SD card will be accessible, but blank. Putting it back into the Panel View Plus again, then begin to log data again, new file will get created, you can see the file when you allow acess again, but when you remove the SD again and put it into the card reader again, the PC says it needs to be formatted…weird….still looking for a solution….don’t want the customer to keep accessing the PV+ just to get a CSV file….Perhaps there is an alternative way to remove this file and get it to my laptop?

I haven’t seen that error message myself, well except every time I plug my USB stick into my PC 🙁 but I never select format and it works fine. However, I totally understand that isn’t a great solution.

You could use the Autorun.bat file we discussed previously to copy all .CSV files from the PVPlus to your removable media – I wouldn’t expect Windows 7 would want to format the card just because CSV files were copied, however it always wants to format my USB since the day I bought it, and I’m not sure why Win 7 does this.

Oh BTW – Found a solution to my problem,..After contacting AB, we determined the SD card was the culprit. Apparently bigger isn’t always better. The 64 GB SD cats was way too fast for the card reader I purchased. It was a Class 10 SD card which is is rated for very fast video and large photo’s…The recommendation from AB was to go to a Class 4 SD card. When I purchased the class 4 16-GB SD card at Best Buy and tried it , it worked great!!…So now we can hot swap the SD card whenever we want to swap the SD cards for analysis. Thanks Shawn for you replies.

The easiest way I know of to confirm your file path on your PVPlus is set correctly is to exit ViewME on your PVPlus 6 or PVPlus CE and use Windows CE Explorer to navigate to your folder of choice to see the exact folder path.

With the old PVPlus and PVPlus CE, the path for the USB Memory stick was storage card2 while on the new PVPlus 6 it’s now usb storage.

I haven’t run into that issue, and I’m not sure have many DataStore Plus objects running at the same is supported.

If I had to guess, I would imagine this is a memory issue, maybe even a memory leak. I would suggest displaying the memory counters to see if the memory usage grows every day until the DSP stops working…

I talked with somebody in tech support who told me that the trigger I was using (an number 1) shouldn’t have work from the beginning, it must be something that changes from 0 to 1, so I create a 1 hour pulse in PLC that I used as a trigger.

In this moment 4 DSP in the same display are gathering data from 3 different PLCs over ETHERNET/IP working perfectly.

Hopefully someone can help me. I am still wrestling with thw same project that I was trying to rebuildd some months ago. I was able to get the original apa file from the vendor along with the associated mer file. if I try to convert the apa back. it can not complete when it gets up to uncompiling the Popup_DataStationPlus graphic. When I open the apa file there is no active X content in the Popup_DataStationPlus graphic. I try to add the ActiveX and I get the message, “The display can not be saved with missing Active X contols. You mustdelete the missing ActiveX controls before saving the display.” Ii is not imperative that it works as everything is being collected on a Ifix SCADA, but I am stubborn and am seeking to find out why. I am wating for the latest FTV studio to grt delivered from AB because the vendor also sent me a updated file that is in the new format. I am hoping that may work. None the less have you ever heard of this error?

Yes, if the ActiveX used in the project was of a newer version than the one you have installed you will see this error.

However, if the version you have installed in the same or newer than the one you used in the project it should work.

You also have to keep in mind that the ME ActiveX’s that come installed on the PVPlus 6 and 7, and installed with ViewStudio 6+ are new, and not the same as the ones you download and install on the older VersaView/PVPlus CE and ViewStudio 5.1 and lower.

So what I’ve always done is used the same or greater version of ViewStudio (5.1 or 8.0, depending on if it’s a PVP or PVP6/7.) However, you may also need to install the same or later patch roll-up too if the original creator of the project installed he patch roll-up.

I am running SoftLogix 5800 with FactoryTalkView ME. My system will have 4 stations doing a process. The process can take several days to complete. Each station can start/stop when the operator tells it to. I need to log batch information based on the start time and when the process stops. I only see a way to start/stop a file based on a time or periodic time or never. I assume I will have to generate 4 of these, one for each station. I am not sure about starting/stopping logging into a new file.

You may want to tie your “batch running” bit to the “trigger” field so you only get data logging when the batch is running.

Then you may also want to tie a “batch path and name” string tag to the “file location” field. When a batch stops (and logging stops,) and the system is prepping for the next batch, your code could change the name portion of the string tied to “file location” to give you a new file for the new batch about to start.

In this case you would also want to set “create new file” to never since new files will be created when the ActiveX control sees a new file path when attempting to log again.

I managed to get the DataStore plus trend object to log my data over time, thanks to your tutorial, but can not seem to display the trend. The visual trend object works with the data stored in the older, limited “Data Log Model”, not the data stored in the DataStore Plus object. One of the major limitations of the older Data Log Model you can not control when it starts or stops taking data, so it just trends all day long, scrolling off screen and taking irrelevant data points when you are not running your process. The new DataStore plus solves this problem by using a Trigger to turn off logging when it is not used. Is this true? You can now trend the data when you want, but you can’t see the trend?

I agree, there is no way for the Trend to trend data from the DataStore Plus csv files.

So, since you can only trend with the older DataLog data files, you may wish to set those up to log only “on change” with a small dead band and possibly even a heartbeat. Doing this should allow you to avoid a large amount of redundant data from being logged.

Also, I think it was in version 7.0 where the Datalog was upped from a max of 300K values to 1mil, so it might be worth upgrading ViewStudio and your firmware to at least 7.0 to get this expended support,

Hi Shawn, I’m really having trouble getting my screen to run the initial display. My application uses the screen control tags also. I tried your Macros, but it just comes up and says “NO SCREEN SELECTED” How do I use external screen control and load up the datastore screen, then go to my main screen and then set to zero in this case? I tried in the logix, but the current screen number doesnt change to 999 my datastore screen number when I boot up.

I’ve been in the same situation – let’s walk through this step-by-step with the hopes of making things clearer:

1) First, we need to make the DSP screen the default screen so it will display first on boot.

– Sounds simple enough, right? But when the PVP boots, I’ve found that sometimes the PLC screen control tag will override the boot screen in an attempt to load a different screen 🙁 This results in the DSP screen never loading.

– Your idea to try to manually trigger the DSP screen when this occurs was a good one, and I’m not sure why it wouldn’t work if you had setup the DSP screen properties with a screen number of 999?

2) Second, once the DSP screen loads (as an on top, can’t be replaced, off to the side of the visual display space screen,) it should trigger a macro that changes the screen control tag from 0 to the number of your main screen (probably 1.)

3) Third, when your main screen loads it also runs a macro to set the screen control tag to a 0, thus allowing the operator to change screens.

– In two and three above, as long as the PLC is sending the PVP to a valid screen it shouldn’t matter if it overrides these macros. However, if the PLC interrupted the loading of the DSP screen, but didn’t trigger a valid screen, nothing would get displayed.

In conclusion, when then PVP boots it’s very important that it’s allowed to load the DSP screen first before the PLC is allowed to command it to a different valid screen. In the situation I encountered, the PLC would interrupt the DSP loading, but then commanded screen 0, so we would end up with no screen displayed 🙁

To get the PLC not to interrupt the boot up of the PVP, and it’s initial loading of the DSP and Main screens, we’ll need to be sure we don’t allow the PLC to command a screen during the PVP project boot-up process.

One way to do this may be to not allow your PLC code to change the PLC screen control tag from 0 until it sees that the PVP project has been booted for few seconds. If you mapped the seconds of the PVP clock to a PLC tag under global connections, that seconds tag should not start updating until the PVP has booted most of your project. If this is the case, you would just need to create a line of PLC code that would keep the screen control tag at zero until the PVP seconds had been updating for a few seconds.

An alternative way may be to use an “if then else” expression in the screen control tag field itself, under global connections. This expression would need to use an internal memory tag set to 0 until the panel booted, and loaded the DSP and then the main screen. After those screens had loaded, the PLC screen control tag could then be used for screen control (I haven’t tried this myself – just a thought.)

I’m using factory talk view machine addition.In that I have an issue to open multiple display as face-plates (more than 1) at once in run time but during if one opens other gets hide (overlapping).Suppose If I want to run two parameters at a time, I can’t access the two face-plates at once.kindly please provide solution.

Hello Good Afternoon. Thank you for your reply
I mentioned required answer in following points.
1. Trying to allow an operator to open two faceplates using two different buttons.
2 .I made 2 separate button on display to open different faceplate but the faceplate is a global object.
3. I have created faceplate in global object and referring the same in display by using parameter passing. 4. It is not Rockwell faceplates.
5. Display settings for faceplate are mentioned below:
a) General Display type option is selected to on top b) Cannot be replaced option is checked in. c) Size in pixels width =244 and height = 176
d) Position X= 100 and Y=100
e) Support multiple languages option is checked in.
f) Maximum tag upload rate is 1 sec.

With this setting during Factorytalk view machine addition in run mode, while opening faceplate by pressing soft button its open at one location similarly if I press other button its opens at another location(changed position of X and Y for two faceplates at different X and Y location) but In that case first gets hide and second getting open.
I want to open two separate faceplate at two different location.
I tried all above setting by check in check out but still its overlapping.
Please provide appropriate solution.

I tested it out this morning in version 8.0 and ran into the very same issue. I initially could not display the same popup screen twice at the same time.

However, I found if I passed either a parameter file, or individual parameter, as long as the values supplied were different I could then display the same popup twice at the same time.

Note – I didn’t have to actually use the parameter passed to the display on the display.

This appears to be a minor bug. It seems the issue is a popup can only be displayed twice (or more) concurrently if each instance is unique.

It also appears if the popup screen is called a second time with identical properties as the first instance, the new instance will not appear, even if the second request is to display it in a different x,y location on the screen.

I even found passing different parameter files did not work if both parameter files were identical. The actual tags or values passed had to be different.

I found this also happens with a global object on the screen.

While it’s highly unlikely in a product environment you would pass the same parameter values to two different popups being displayed at the same time, I do think it is possible for this to happen randomly.

One way to work around this issue would be to include an additional, unique parameter when displaying each popup, even if you don’t use that parameter on the display itself (i.e. #10 = “Popup Instance x”)

I also passed parameters through parameter list option which is present in button properties but even though if I passed two separate parameter list from two separate button to open two seperate displays, if I open first display by pressing first button as soon as if I press second button first display overwrite with second display in run mode, even though both are seperate display and pressed by seperate button.
If you could give snaps or more setting details with example then it would give me clear idea.

I did some additional testing again using FTView 8.0, and the only time I could not get the same popup to display twice was if I passed either the same Parameter File or Parameter List to the second instance

But as long as I passed different files or lists I didn’t have an issue displaying the same popup twice.

One step I did take to insure the popup (on top) graphic display didn’t open over top of itself was to enabled the “Display Position” option on the “General” tab of the Goto button. So for each button that displayed my faceplate with a different parameter file or list, I used a different “Left Position” (in pixels) so they would popup on different locations on the display.

PS – If you send me your email address using the “Contact” link on the top of the page, I’d be happy to email you my test project.

I would like to log values on two different time bases. The first group is a 5-minute time base. The second is a 1-hour time base. After looking through the settings, it looks like I’m limited to a single timebase only, regardless if I use the default data logging or the ActiveX. Would the solution be putting two activeX controls on my initial screen, or is there a reason that wouldn’t work?

I have a similar problem to Nick from July 17. With my path set to USB Storagedatastorereport.csv I get the “Unable to activate connection: USB… . I tried wqith another folder in my documents and set the path to My Documentsdatastorereprt.csv and got the same message. What am I missing?

Seeing this on a panelview plus 6 700 version 6.1. I’m trying to put the path in a string tag now per Knowledgebase article 493999. I’m not seeing the “Unable to activate connection” but so far still not writing to external storage.

Putting the path in an HMI tag solved the connection problem. Although I’m sure my original problem as not enclosing the path in ” ” . My other issue was a bad tag in the trigger postion. It was never changing to 1. Seems to be working fine now. Thanks for the help.

I’m going to add a note about the “quotes” above as a lot of people miss them.

For future visitors who may get the same error:

Testing your app on your PC is a good way to check your trigger, and browsing to your path right on the PVPlus is a good way to verify it’s correct (the PVPlus, PVPlus 6/7 and PC all have different paths for USB flash drives and Windows folders so it gets kind of confusing!)

I have another curious problem maybe you have some insight on. I have the activeX trigger set to write data only once every 12 hours, only one row. I also have it set to start a new file at specified times and set two times each day, on two separate lines, both a few minutes before the data is captured. However, it seems to have a mind of it’s own about starting the new files. Some days it starts two, some days one, some days not at all and the data is always just added to another row in the last file it created.

Sounds like some strange behavior… do you have the DSP ActiveX on a single display that is always running? If so, and the display is set to update at a reasonable rate (twice as fast as the data collection time) and you’re direct referencing tags then what you’re seeing would be quite unexpected!

Problem solved. Per knowledge-base answer 731211, the activex will not start a new file if the trigger is not active. Since I was only trying to capture one set of data in 12 hours I didn’t have the trigger active at the specified times.

I have a difficult application im trying to repair and seek your expert guidance. I having one HMI (panel view plus 1000) communicating to two PLC’s. The tricky part is the PLC’s are working together as a primary and secondary system. Both PLC’s run the same program with all inputs and outputs wired in parallel.

Question i have for you is;

Is there a way to setup in the networking settings to assign a primary controller and secondary controller ?

I have followed all of the steps above, but am having trouble getting the .csv files to be created on my PC. I specified a file location “C:Datadataview.csv”. When I run my panelview program, no .csv file is generated to that file location on my PC. Here is the catch, when I open up my panelview program on FactoryTalk View (on my PC) and open up my Datastore activex screen and press play, it logs the data in the file location. I am working on a PV plus 6 CE.

Thanks for the reply Shawn. I can see the activex screen pop up briefly when i first start up the panelview, then it goes away as it should. I think my issue is that i am not saving the data on the panelview to an area that i can access with an external PC. I am trying to access the datastore data from an external PC connected to the panelview via Ethernet. I believe i need to set up a network location or FTP server.

Hmm… from what you describe, it does not sound like the DSP screen is set to “On-Top” and “Cannot be replaced” and therefore it won’t stay open allowing DSP to run and log data (which is what I suspected and why I suggested repositioning it to the visible pixel area of the display.)

Once it’s staying open and logging, you can change the screen x and y position so it’s off to the side of the viewable area, because it must stay open all the time and On Top and Cannot be replaced is our only option to do so in ViewME.

As far as storing the CSV files in a location your PC can access, I often store them in the same folder as I set for the FTP server on the PVPlus to share, so that part should work great as long as the WinCE folder path used for the FTP server is the same as you enter into the DSP config.

Hi Shawn,
I am trying to get DSP to log to my laptop with no luck. The panel keeps telling me invalid file path. The exact syntax I entered into FileLocation on the ME Data Store Plus Properties is “C:LogsDataFileLog.csv” What am I missing?
Thanks in advance

Yes, when I test run it seems to work. When I stop the test run, it does not. Either way, test run or not, I get an alarm on the panel that the file path is invalid. My path names look correct, not protected, etc. The panel does not seem to “see” my PC. Ultimately I want to hook it to our network thru ethernet.
Thank for the quick reply!

The DSP “File Location” parameter can be either a network share or a local directory. C:Logs is a valid local directory on a Windows PC, but it not valid on the Panel which is why the panel gives you this error.

If you would like the panel to log to your PC over the network, you’ll need to use a network path.

Start by sharing your C:Logs folder in Windows, and then to check that it is working browse to it from another PC on your network and try to place a file into it to insure you have write access.

Once you have it working PC to PC, you should know the “path” to that folder

NOTE: Depending on your network settings, you may be able to use your computer name as part of the path, or you may have to use it’s ip addresses. That goes into DNS, WINS, and other network settings and how you setup the PanelView.

You may find it easier to have the PanelView log to it’s own local directory which you could serve up using the PV’s FTP or File Sharing services, and then just grab the files from the PV when you want them.

I am at the point where I can see and write to the folder PC to PC using the computer name. Still not working in the panel. In order to use the computer name, how should the panel be setup (as in what network settings)?
Thanks again

Hi Shawn, just curious. Is it possible to run multiple logs from the Datastore plus? For example, i have 4 elements with different data i would log but would want to log them into their own separate CSV files. Is it as easy as just creating 4 separate data store plus objects within the active X screen and simply give them their own respective data and file locations etc?

Shawn was kind enough to help me out with this originally. I have expanded it to do what you are looking for. Just add multiple Data Log components (MEDataStorePlus) to the screen. I currently have 3 going to 3 different csv files, from 2 different PLC’s.