Individual Work Period Report Per Till

Feels like I am watching an artist when I seem your work Q!
You have ID NO. 274 highlighted in your image above (partly obscured). How have you done that as I thought that was a report widget, Display Only, whereas it looks like a Result Grid?

[#Punch Editor:1,1, 1,48,48, 1]
 ^ the # symbol turns the Report into a result grid, so we can select individual lines

When we have a #Report, we can select an individual Row and then access individual Cells within that Row using the Setting Mappings in the Custom Report Viewer Widget Settings.

1 Like

So we could call an Update Action for an Individual Line or Cell i.e. Toggle On or Off a value?
(Can’t tell you guys how excited I am getting here with these tools! Like "#" - did not pick that up from my reading)

I know it must be getting late for your so sorry for being a pest.

I understand almost all of this stuff but little confused with this picture and syntax:

So it seems you have listed 5 parameters as you have shown above (fantastic) but there are only 2 colums defined in the template [Earnings Summary $2:6, 4].

How is the 2 lines after the "@@" evaluated to get the output in the image, like how does it know to place which "$parms" and the Data syntax changes? :confused:

Way back when Custom Reports first came to be, Emre mentioned it, but it gets passed over because it isn’t often used. It wasn’t until we started to hash out the idea of the Punch Editor that Emre reminded me. I was building this crazy looking “Report” using a bunch of Command Buttons at first, but Emre “solved” that insanity by bringing up the #Grid feature and the Setting Mappings usage and syntax.

I don’t understand what you are asking. This is still a Report (results produced by @@SQL script). We cannot directly edit the data in it.

Yes I do not want to edit the data as displayed in the Report BUT I wish to update the source data coming from an Entity and then refresh the Report Grid?

For instance maybe the Report used a EXPRESSION:x=y and through an Update we change “Y” so therefore when we refresh the report that Grid Line is no longer shown. Or it could be more simple that we just change some field data like Name = “Bill” -> Name now equals “Billy”.

That is exactly what the Punch Editor does. It passes data into {SETTING:x} variables, then Automation executes SQL UPDATE Statements directly to the DB based on the ID field in [EntityStateLogs] to change the Start and/or End Date/Time. Then it refreshes the Grid.

That is theoretically possible I believe. You would just use a $variableParameter as in:

{REPORT TAG:Fields:(TT=$1)}
1 Like

Ah @QMcKay it is passing 5 variables to a @@SQL script - :relieved:? The script is only returning 2 values?
My thirst for Samb knowledge is growing out of control here!

Reports (Formatted Informative Data) is one of the most important and useful parts of any IT System so sorry I place a significant weighting on Reports…

[EDIT]
Questions answered in Punch Editor tutorial - very, very nice work.

2 posts were merged into an existing topic: Punch Editor for Timeclock

Sorry, I was composing this reply and lost internet access for the rest of the day/night.

It is magic. :stuck_out_tongue_winking_eye:

@@blahblah calls a SQL Script. It is not the same as @var1,var2,var3 which is a variable parameter list. I am not using lists here as Kendash demonstrates, but I am using $variableParamters which are passed in from the Widget or the Action that Refreshes the Widget.

Since my internet was down, I had lots of time so I could create this beauty…

4 Likes

OMG! - Leonardo da Vinci!

Yes that sneaky Rule - thanks for taking the time, I am sure many posters will enjoy that schematic :smile:
Leonardo was an Engineer… :grin:
(@QMcKay - hope no offense taken, just having a little fun)

2 Likes

How I missed this masterpiece? Thought it will be nice to bump for people who interested on using variables.

2 Likes

hi is there a database import file for this Individual WP Report Per Till? sorry just having hard time following these steps .
working on this all week migrating v4 to v5 had bunch of issues but was able to figure out .only thing i got left is to split reports by till .i have 2 tills and server.down to last 2 days before openning .

"know your terminal ID which can be found using MSSMS "
ifigured this out mssms is microsoft sql server management studio
expand database /expand tables /right click dbo.terminals and select top 1000 rows
id3= server
id5=till1
id6=till2
id7=till3

now in sambapos under reports i must add report or edit existing
under reports i have
transactions w tips report
terminal sales repor
new reports
test

can any one brake instructions down for me to a newbie level so i can complete this thx
well did not get respond and wasted 3 days on this then i came across this
Program Settings > Maintenance > Create default Reports

that is it done by pressing maintenance /create default reports .in v5 it brought back my reports that i used in v4 .
i was wondering why all the reports where missing in v5 i thought we had to build from scratch ,according to the migration steps all we had to do was copy database .
one must change messaging server from 8080 or 8383 to new 9000+
next they must go in to maintenance /create default reports to get there reports back .
i am glad this solved it as i was stuck on the scripting part of creating the formila and veriables no matter how many times i read it confused me more .

Thanks for the idea.

I want to filter based on Terminal ID for the report below, where should the ID " && TerminalId == 1" be placed

[Sales:2, 1, 1]
{REPORT ORDER DETAILS:O.MenuItemName,O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True)}

Total||{REPORT ORDER DETAILS:O.ExactTotal.Sum:(ODI=True)}

You should really have a look at Custom Report Tags

Total||{REPORT ORDER DETAILS:O.ExactTotal.Sum:(ODI=True) AND (TE=POS 1)}
Total||{REPORT ORDER DETAILS:O.ExactTotal.Sum:(ODI=True) AND (TE=POS 2)}
1 Like

Thanks for the reply.
&& works same as AND ?
I Tried AND but didnt work

He gave you the answer.

Yes , but dont know why it didnt not work for me. I replaced POS 1 POS 2 with my terminal names

Show us what you tried. We need to see it so we can be sure its not a simple typo or CAPS issue.

Also show us your Settings / Local Settings for each machine so we can be sure you mapped terminal correctly.

Thanks Jesse, I got it