Application Assistance Req:

mrtweaver

Member
Join Date
May 2007
Location
Bloomsburg
Posts
329
I am looking for an application that I can run that will do the following and if an application as such does not exist was wondering what someone might charge to write said application in whatever language they are familiar with.

I have two tables in SQL. One table is used to send numerical data to the PLC's that one is called ProdTrack. THe second table is called ProdEmployee, it contains the actual employees name.

What we would like to do is incorporate this into our SCADA system. We would use the scada to invoke this application.

What this application would do is take the numerical numbers from ProdTrack, then look up the numbers in ProdEmployee where the numbers would then become the actual employees name, it would also take the Job number and look that up as well and then it would print a nice report that contained:

Machine number, Job, Employee 1, Employee 2, Employee 3, Floater, Spec. OP.

Finished print out would look like:

1 AAA West Smith,Mike Smalls,Diane etc..

Not all the fields are used every time. Most time the only fields used are Machine number, Job, and employee 1.

Any assistance appreciate. Thank you.
 
So, you want to be able to input the Employee Number (ProdTrack) and it will replace it with the Employee Name (ProdEmployee).

So you input Machine, Job, and Number, and it outputs, in nice format, Machine, Job, Names?
 
Not exactly. I want it to be somewhat automated. When the application is run it will poll thru all the data in the Prodtrack table. It will then take the data it finds in prodtrack and fill in the proper name instead of a number. Prodtrack contains data for 99 machines. All like I said in numerical format so it can be sent to the PLC's. So Prodtrack might contain something like:

1 129834765 17854 18965 0 0 0 0
2 198273645 11223 55446 0 0 0 0
thru
99 171827364 0 0 0 0 0 0

Some of them will not have assignments on them

When this application that we are discussing is ran it will do a LEFT JOIN which I know is an SQL command to join the data from one table to the data in another table. So it will pull in the data listed above, translate that into text by using the other table, then print the results out.

So the final print out would look much like I described in an earlier post. The only problem I have is not knowing C, C#, Python, VB, VB.Net or C++. I know machine language or as some people call it assembly. But because of being out of the loop for some time there is a lot of stuff I have forgotten over the years.


Tharon said:
So, you want to be able to input the Employee Number (ProdTrack) and it will replace it with the Employee Name (ProdEmployee).

So you input Machine, Job, and Number, and it outputs, in nice format, Machine, Job, Names?
 
Inductive Automations Factory SQL and PMI package. In the current state their print functions operate equivalent to screen print and this is not exactly the functionality we would like to have. This is why we would like to make or have made an external application that would do what we desire. If I knew more about Python I might be able to make it as a plug in because that is the underlying archetecture of their software.



Marshy said:
Which SCADA system are you using?
 
Inductive Automation's Reporting Plugin was designed to do exactly what you are looking to do, create a custom report.

http://www.inductiveautomation.com/products/plugins/reporting/

I haven't worked with FactoryPMI's print function much yet, but I'm not sure why you couldn't create a window in FactoryPMI and print it. I'm not sure what kind of functionality you're looking for in a custom application that you couldn't create in FactoryPMI.

Maybe you could explain how you want your report to look so we could give you an idea on how to accomplish it with FactoryPMI.
 
Tell us what SCADA system you are using.

You probably do not even need a SQL middleware like FactorySQL or RSSQL. If your SCADA can do VBA or other SQL function you can always do a stored procedure and use MSSQL's SQL Reporting service.
 
Tark, you are correct. The FactoryPMI reporting plugin is what he would be looking for with FactoryPMI. It's a WYSIWYG report creator and engine for generating PDF based reports from SQL queries - it's big advantage is that it's web based and embedded in FPMI so it's easy to access. Harry is also correct about not needing an HMI middleware to create reports from databases. In fact, your big commercial packages are typically much more mature products than HMI versions. The HMIs do bring to the table the advantage of incorporating process data - if it isn't already stored in the DB.

As you mentioned, your data merging requirements are satisifed by the LEFT JOIN, which is supported by the database. Any HMI that lets you write your own query should have an easy time with this part. Although substitution is programmatically simple, red flags should be going off if you find yourself writing code beyond SQL that's doing what the database does best.

Your next requirement, printing a nice report, is something that could be a part of HMIs, but typically isn't. Generating dynamic reports is specialized and complex enough that you have dedicated applications (or plugins) to do it. As an analogy, could you write your own web server or rendering engine within an HMI? Probably, but my guess is that you'd be better off using somebody elses.

Crystal Reports is probably the closest thing to a standard for Enterprise report generation, but there are many other stand alone packages that would work for you. I would guess that every HMI vendor has some package or plugin that they'll sell you to generate reports within their HMI. You have options since everyone should be able to communicate with your SQL database, although some vendors make it tricky to incorporate process (PLC) data.

FactoryPMI can display that same data in tables. Most HMIs should have this capability. The big difference with reporting is being nicely printable. You may have lots of data/images that you don't want cut across pages. They tend to be good at headers, footers, page numbering, aggregate functions (sum, count, average), and multiple levels of grouping. There's also a lot to page/print formatting that reporting engines encapsulate.
 
Last edited:

Similar Topics

Hello Guys, Well just a little back ground as to how the problem started. Last night our governors decided (somehow, we still don't know how yet)...
Replies
6
Views
1,626
So i have a customer that is interested in printing a tag on each pallet of product that contains a batch number and any alarms that were...
Replies
2
Views
2,668
Please allow me to briefly explain a problem I need a solution to: We have an in-floor conveyor system that carries product from up to four...
Replies
11
Views
3,918
Has anyone ever seen where you have a tag reading from the plc in scada. In this instance it's just a PEC, I set it up on one scada terminal and...
Replies
0
Views
87
Hello everyone, Recently, my Archestra IDE shut down while I was editing. After restarting the IDE, I noticed warning symbols under my opened...
Replies
1
Views
96
Back
Top Bottom