330 likes | 483 Views
TCL Nothing but the Basics. 2014 FoodPro Users Conference Presented By: Peg Skerchock – Penn State mds1@psu.edu. What do you need to build a TCL statement?. You need to know what you are looking for A verb (action)– just use SORT A file – Global, Local or Warehouse
E N D
TCLNothing but the Basics 2014 FoodPro Users Conference Presented By: Peg Skerchock – Penn State mds1@psu.edu
What do you need to build a TCL statement? • You need to know what you are looking for • A verb (action)– just use SORT • A file – Global, Local or Warehouse • One or more qualifiers or filters (“=“, “#”, “with”, “by”, “and”, etc.) • How do you want to display the results • Practice – understand the theory, don’t memorize the command
What are you looking for? • Say it out loud: I want an alphabetical list of all the pizza recipes in Global. • Verb – SORT • File – Global (Recipe) • Filter – just pizza recipes • Qualifier – alphabetical • Display – probably recipe number and name
Build the Statement • Verb – SORT • File – GREC • Filter – WITH NAME = “[PIZZA]” • Qualifier – BY NAME • Display – NAME
What does that look like? • SORT GREC WITH NAME = “[PIZZA]” BY NAME NAME
What’s with those brackets? • Wildcards – how you filter • “[PIZZA” – the names must end with PIZZA • “PIZZA]” – the names must begin with PIZZA • “[PIZZA]” – PIZZA can appear anywhere in the name
Notice the difference • SORT GREC WITH NAME = “[PIZZA” BY NAME NAME
As opposed to… • SORT GREC WITH NAME = “PIZZA]” BY NAME NAME
And finally… • SORT GREC WITH NAME = “[PIZZA]” BY NAME NAME
Now I want just the pizzas that have bacon • Verb – SORT • File – GREC • Filter1 – WITH NAME = “[PIZZA]” • Filter2 – AND WITH NAME = “[BACON]” • Qualifier – BY NAME • Display – NAME
You might try this… • SORT GREC WITH NAME = “[PIZZA]” AND WITH NAME = “[BACON]” BY NAME NAME
But was that what I really wanted? • Verb – SORT • File – GREC • Filter1 – WITH NAME = “[PIZZA]” • Filter2 – AND WITH INGRED.NAME = “[BACON]” • Qualifier – BY NAME • Display – NAME
Notice some differences… • SORT GREC WITH NAME = “[PIZZA]” AND WITH INGRED.NAME = “[BACON]” BY NAME NAME
What are the file names and what is in them? • LISTFILES – list of formal filenames • LIST.DICT <filename> – full description of what is contained in each file • AMC <filename> – list of what is in each file. • An item is an individual record. E.g. a recipe, an inventory item, a menu. • The “dictionary” of a file describes how the information is arranged in each item. In most cases, the information of every item in a single file is arranged in the same fashion. It also can describe how the information was obtained and how it will be displayed. • Depending on their use and/or format, you can have several dictionary items for the same information. E.g. in GREC you have POR.SIZE, PORT.SIZE, SIZE
Common files and their short names Short filenameFull filename • GINV FS.GLOBAL.INVENTORY • GREC FS.GLOBAL.RECIPE • LINV FS.LOCAL.INVENTORY • LREC FS.LOCAL.RECIPE • CYCLE FS.CYCLE.MENU • STD FS.STD.MENU • SNEEDS FS.SERVICE.NEEDS • INVS FS.INV.STATUS • INVH WH.INV.HEADER • INVD WH.INV.DETAIL • NA.XREF • USE FS.INV.USE
Short list of item ID’s • GINV – 4 or 5 digit inventory number including leading zeroes, e.g. 0298 • GREC – 6 digit recipe number including leading zeroes, e.g. 061069 • LINV – 2 digit location number followed by GINV number. E.g. 140298 is item 0298 in location 14 • LREC – 2 digit location number followed by GREC number, e.g. 14061069 • CYCLE or STD – 2 digit location number followed by 4 digit menu number. E.g. 141203 is menu 1203 in location 14
How do you know this? • Curiosity, practice and experience • SORT-ITEM any filename and analyze the results. Compare the raw data to what you see on a FoodPro screen. • Global file ID is usually the number you assign to something including leading zeroes. • Local file ID is usually that same number prefixed with the location number • Warehouse ID is the global number (where applicable) prefixed by the location number of the warehouse
Some Helpful Hints • The item ID will always display unless you tell it not to. • Nothing else will display unless you tell it to. • The filters will apply to the item ID unless you specify otherwise. • Be sure to use AND if you have more than one filter. • Sorted reports make more sense than unsorted ones. • Less is more – use the shortest string possible when looking for a name. E.g. “TOM” vs “TOMATO" • Listing the change date is always helpful. • “” means null or “empty” or “blank”. • Type “Q” to quit a listing. • Send the report to the screen and check for accuracy before you send it to the printer.
Verbs include: COUNT LIST SORT LIST-ITEM SORT-ITEM SELECT SSELECT SAVE-LIST GET-LIST SEARCH Terms • Filters/Qualifiers include: • WITH • WITHOUT • AND • =, #, NE, <, LT, >, GT, LE, GE • BY • BY-DSND • BY-EXP • Wildcards include: • [ • ]
Terms cont. • Options include: • BREAK-ON • LPTR • ID-SUPP • HDR-SUPP • COL-HDR-SUPP • HEADING • SAVING UNIQUE
Glossary of Terms • COUNT <filename> Displays how many items are in a file. E.g. COUNT GREC • LIST <filename> Displays JUST the item ID’s in a file. E.g. LIST GREC • SORT <filename> Sorts and displays JUST the item ID’s in a file. E.g. SORT GREC • SORT <filename> <filters/qualifiers> <display> Sorts a file by item ID’s unless BY is used then displays filtered/qualified results as requested. E.g. SORT GREC WITH PORT.UNIT = “[EACH]” BY NAME NAME PORT.SIZE PORT.UNIT
Glossary of Terms cont. • SORT-ITEM <filename> Displays all the raw detail information sorted by Item ID’s. E.g. SORT-ITEM GREC • SORT-ITEM <filename> <“item ID”> Displays the raw detail for just one item in a file. Quotations are required. E.g. SORT-ITEM GREC “061069” • SSELECT <filename> <filters/qualifiers> Creates a sorted temporary select list of all the item ID’s that match the criteria. E.g. SSELECT GREC WITH PORT.UNIT = “[EACH]” • SAVE-LIST <your_madeup_list_name> Saves the list you created above so that it can be recalled and used again. E.g. SAVE-LIST PEG.RECIPES
Glossary of Terms cont. • GET-LIST <your_madeup_list_name> Recalls the list you created above so that you may sort on just those item ID’s. E.g. GET-LIST PEG.RECIPES SORT GREC WITH NAME = “[FRUIT]” BY NAME NAME PORT.SIZE PORT.UNIT • SEARCH <filename> and then you are prompted to input one or more strings. This searches all fields in the file for any of the strings provided and is useful when you do not know the layout of the file or the data. E.g. SEARCH GREC
Glossary of Terms cont. • WITH <dictionary> <filter/qualifier> <condition> – display only the items where the dictionary and filter/qualifier meet the condition. E.g. SORT GREC WITH NAME = “[SOUP] BY NAME NAME • WITHOUT <dictionary> <filter/qualifier> <condition> – display only the items where the dictionary and filter/qualifier do NOT meet the condition. E.g. SORT GREC WITHOUT NAME = “[SOUP]” BY NAME NAME • AND – used to connect multiple WITH or WITHOUT statements. E.g. SORT GREC WITH NAME = “[SOUP]” AND WITHOUT PORT.UNIT = “[OZL]” NAME PORT.SIZE PORT.UNIT • # or NE – not equal • < or LT – less than
Glossary of Terms cont. • # or NE – not equal • < or LT – less than • LE – less than or equal • > or GT – greater than • GE – greater than or equal • BY – how something is sorted, always in ascending (low to high) order • BY-DSND – how something is sorted, always in descending (high to low) order • BY-EXP – by exploding – used to sort multi-valued fields – complicated but powerful
Glossary of Terms cont. • BREAK-ON – display a break between filtered values E.g. SORT LREC WITH NAME = “[PIZZA]” BY NAME BREAK-ON NAME PROD.LOC • LPTR – send the report to the printer, can also use (P • ID-SUPP – suppress display of the item ID’s – usually done because you are displaying the item ID in a nicer format • HDR-SUPP – suppress the display of the TCL command on the report • COL-HDR-SUPP – suppress the display of the TCL command and all the column headers – this is often used when exporting the results to Excel
Glossary of Terms cont. • HEADING – used to display descriptive text at the top of the report. E.g. SORT GREC WITH NAME = “[PIZZA]” AND WITH NAME = “[BACON]” BY NAME NAME PORT.SIZE PORT.UNIT HEADING “All pizza recipes with bacon in the name” • SAVING UNIQUE – used when creating select lists where you are saving something other than the item ID and there may be the possibility of duplicate values.