Copyright 2007, Information Builders. Slide 1 Master File Basics Joel Starkman Director of Operations June, 2008.

Slides:



Advertisements
Similar presentations
1 Noreen Redden FOCUS Users of New England 2012 MFD_PROFILE PROFILE for Your Synonym:
Advertisements

Copyright 2007, Information Builders. Slide 1 Relational Efficiencies: Part II Overview and JOIN / Sort Scenarios Renee Teatro Information Builders.
Analyzing Systems Using Data Dictionaries Systems Analysis and Design, 7e Kendall & Kendall 8 © 2008 Pearson Prentice Hall.
3/5/2009Computer systems1 Analyzing System Using Data Dictionaries Computer System: 1. Data Dictionary 2. Data Dictionary Categories 3. Creating Data Dictionary.
Access - Project 1 l What Is a Database? –A Collection of Data –Organized in a manner to allow: »Access »Retrieval »Use of That Data.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
Chapter 2: Introduction to C++.
Introduction to Array The fundamental unit of data in any MATLAB program is the array. 1. An array is a collection of data values organized into rows and.
Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment.
1 Agenda Views Pages Web Parts Navigation Office Wrap-Up.
Oracle Data Definition Language (DDL)
CSE314 Database Systems Data Modeling Using the Entity- Relationship (ER) Model Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson Ed Slide Set.
8 Copyright © 2004, Oracle. All rights reserved. Creating LOVs and Editors.
Microsoft Access Tables Birgül Kutlu Bayraktar. TERMS A database is a collection of related information. An object is a competition in the database such.
CSC 125 Introduction to C++ Programming Chapter 2 Introduction to C++
Copyright © 2003 by Prentice Hall Module 4 Database Management Systems 1.What is a database? Data hierarchy and data organization Field, record, file,
ASP.NET Programming with C# and SQL Server First Edition
1 Workshop Topics - Outline Workshop 1 - Introduction Workshop 2 - module instantiation Workshop 3 - Lexical conventions Workshop 4 - Value Logic System.
Fortran 1- Basics Chapters 1-2 in your Fortran book.
Lesson 1: Introduction to ABAP OBJECTS Todd A. Boyle, Ph.D. St. Francis Xavier University.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 2 Input, Processing, and Output.
IPC144 Introduction to Programming Using C Week 1 – Lesson 2
 A database is a collection of data that is organized so that its contents can easily be accessed, managed, and updated. What is Database?
CHAPTER:14 Simple Queries in SQL Prepared By Prepared By : VINAY ALEXANDER ( विनय अलेक्सजेंड़र ) PGT(CS),KV JHAGRAKHAND.
Sales person receive RM200/week plus 9% of their gross sales for that week. Write an algorithms to calculate the sales person’s earning from the input.
CHƯƠNG 3 Finding, Filtering, and Formatting Data.
Introduction to Java Applications Part II. In this chapter you will learn:  Different data types( Primitive data types).  How to declare variables?
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 2 Input,
Input, Output, and Processing
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 2-1 Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley.
Data Structure & File Systems Hun Myoung Park, Ph.D., Public Management and Policy Analysis Program Graduate School of International Relations International.
11 3 / 12 CHAPTER Databases MIS105 Lec15 Irfan Ahmed Ilyas.
Copyright © 2012 Pearson Education, Inc. Chapter 2: Introduction to C++
XP Chapter 1 Succeeding in Business with Microsoft Office Access 2003: A Problem-Solving Approach 1 Preparing To Automate Data Management Chapter 1 “You.
WHAT IS A DATABASE? A DATABASE IS A COLLECTION OF DATA RELATED TO A PARTICULAR TOPIC OR PURPOSE OR TO PUT IT SIMPLY A GENERAL PURPOSE CONTAINER FOR STORING.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 2 Input, Processing, and Output.
Java™ How to Program, 10/e © Copyright by Pearson Education, Inc. All Rights Reserved.
Data TypestMyn1 Data Types The type of a variable is not set by the programmer; rather, it is decided at runtime by PHP depending on the context in which.
A Skills Approach Access 2010 Working with Tables © 2012 The McGraw-Hill Companies, Inc. All rights reserved Chapter 2.
A Simple Guide to Using SPSS ( Statistical Package for the Social Sciences) for Windows.
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Chapter 2: Introduction to C++
1 The Master That Tells All Floria Foote Information Builders June 2008.
Relational Databases. Relational database  data stored in tables  must put data into the correct tables  define relationship between tables  primary.
Analyzing Systems Using Data Dictionaries Systems Analysis and Design, 8e Kendall & Kendall 8.
Python Primer 1: Types and Operators © 2013 Goodrich, Tamassia, Goldwasser1Python Primer.
CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University.
Mr C Johnston ICT Teacher
JOIN Syntax and Techniques Noreen Redden Information Builders Copyright 2011, Information Builders. Slide 1.
CHAPTER 2 PROBLEM SOLVING USING C++ 1 C++ Programming PEG200/Saidatul Rahah.
Transportation Agenda 77. Transportation About Columns Each file in a library and item in a list has properties For example, a Word document can have.
Introduction to Java Applications Part II. In this chapter you will learn:  Different data types( Primitive data types).  How to declare variables?
Microsoft Access Prepared by the Academic Faculty Members of IT.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Introduction to C++
Getting Started in Access 1 Using an existing Database Database Window Table Design View Parts of a Table Views in Access Navigating in Access Entering.
Chapter 4.  Variables – named memory location that stores a value.  Variables allows the use of meaningful names which makes the code easier to read.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 2-1 Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley.
2.1 The Part of a C++ Program. The Parts of a C++ Program // sample C++ program #include using namespace std; int main() { cout
Data Modeling Using the Entity- Relationship (ER) Model
Topics Designing a Program Input, Processing, and Output
Databases Chapter 9 Asfia Rahman.
Quick Start: Metadata Basics
IDENTIFIERS CSC 111.
Chapter 3 The DATA DIVISION.
Introduction to C++ Programming
Chapter 2: Introduction to C++.
Topics Designing a Program Input, Processing, and Output
Topics Designing a Program Input, Processing, and Output
Introduction to MS ACCESS
Presentation transcript:

Copyright 2007, Information Builders. Slide 1 Master File Basics Joel Starkman Director of Operations June, 2008

Copyright 2007, Information Builders. Slide 2 Describing a File to FOCUS What does a Master Do? DENEWARK06782S CAPOMONA92739C VTSTOWE 05638S OHTOLEDO27384C LAGRETNA47402C FILE=… SEG=… FIELD=OFFICE,,I5,$ FIELD=STATE,,A2,$ FIELD=CITY,,A6,$ FIELD=ZIPCODE,,A5,$ FIELD=CS,,A1,$ FIELD=SALES,,D4.1,$ FIELD=AREACODE,,A3,$ FIELD=PHONENUMBER,,A7,$ DEFINE CSTEXT/A12 = IF CS EQ ‘C’ THEN ‘CONSULTING’ ELSE IF CS EQ ‘S’ THEN ‘SALES’ ELSE ‘ ‘;,$ A Master tells you what your data looks like

Copyright 2007, Information Builders. Slide 3 Describing a File to FOCUS What does a Master Do? STATE CITY Detailed information A Master defines the relationships among groups of related data Segment COUNTRY Segment EMBASSY Lots of Detailed information

Copyright 2007, Information Builders. Slide 4 Major Components of Describing a Data Structure FileSegmentField Attribute Country State Field1 Field2 Field3 City Embassy Field4 Field5 Field6 Field7 Field8 Field9 Field10 Field11 Field12 Field13 Type of data Length Decimal places Commas Currency symbol Negative display Date format Indexed Field Attributes (Usage and Actual) F I L E

Copyright 2007, Information Builders. Slide 5 Master File Description Describing a File to FOCUS  Called a Master File Description, or MFD, or colloquially just “MASTER“  Information in a Master  Type and physical location of the file or its parts (segments)  Organization and relationships among the data fields  Characteristics of the data fields  Calculations of fields created at runtime  Connections to other files (cross-references - CR)  Security restrictions (DBA) if applicable  Naming conventions:  filename MASTER or MASTER(filename) or filename.mas  Create a Master via:  System editor (ISPF, XEDIT, vi), TED, IEDIT, other  AUTO tool or CREATE SYNONYM Tool  COBOL-to-FOCUS Translator

Copyright 2007, Information Builders. Slide 6 General Syntax Flow FILE= SEGNAME=, SEGTYPE= FIELD= $ Whole-Line Comment SEGNAME=, SEGTYPE=, PARENT=, CRSEG= FIELD= FIELD= ,$ Comment FIELD= DEFINE runtime field Indent and line-up attributes for readability

Copyright 2007, Information Builders. Slide 7 General Syntax Components FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Up to 3096 different fields Up to 256 segments (new in 7.6) (XFOCUS and non-FOCUS files only)

Copyright 2007, Information Builders. Slide 8 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Name for this data as known to FOCUS (TABLE FILE name) Physical dataset location (quick substitute for ACCESS) DATASET ‘dsname [ON sinkname]’ File Attributes Type of file FOC, XFOCUS, FIX, DFIX, COM, TAB, VSAM, DB2, etc. Default Century and Year Threshold for all dates in the file (override at field level) Names of theACCESS File where physical file location and information is described Default Century and Year Threshold for all dates in the file (override at field level)

Copyright 2007, Information Builders. Slide 9 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Segment Attributes SEGTYPE S[H]nData sorted by first “n” fields. ‘H’ means sorted high-to-low S0 No keys - for most non-FOCUS data structures UUnique segment – one occurrence per parent instance K[L]U/MData is in another file, with a cross-ref field in common PARENT Structurally higher segment to which this segment belongs Example: Segment with employee name might be the PARENT of a segment of salary data FML Hierarchies use additional options “CAPTION=“ and “PARENT_OF=“ How segment instances are arranged (sorted, inverted sort, no sort, # of sort keys) Segment higher in the structure to which these “children” relate (no PARENT on root seg) Arbitrary or expressive name of a collection of related fields “Segments are logical collections of fields”

Copyright 2007, Information Builders. Slide 10 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Segment Attributes LOCATION, DATASET  Reduces size of main physical file  Often used for Unique segments (Segtype=U) with large alpha strings  Often used for seldom-accessed or generally-archived segments  Must be declared when file is Created or Rebuilt Logical name of the file containing the data for this segment Physical full name of the file containing the data for this segment Top Middle Bottom Seg1 Seg2 Seg3

Copyright 2007, Information Builders. Slide 11 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Assign a Name to the FIELD and Provide an ALIAS Name Example: FIELD=THISISTHELONGNAMEOFTHEFIELD, ALIAS=SHORTNAME,... FIELD=SOCIAL_SECURITY_NUMBER, ALIAS=SSN,... Assigns a name to a unit of data for reference in all requests*, up to 66 chars long Alternate name, usually shorter (but not always)* *also column-name for relational databases (specific ALIAS is required for some data adapters)

Copyright 2007, Information Builders. Slide 12 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Declare How a Field Should Be Displayed Example: … USAGE=D12.3BcM, … How a field is used in calculations and aggregations, and how to display it on output Ddouble precision, 1212 total positions,.3 3 decimal places, Bbracket when negative, csuppress thousands commas, Mfloating dollar sign So -12,345, would display as ($ ) 8-char max

Copyright 2007, Information Builders. Slide 13 Type (T)Length (L)Description A1-4096Alphanumeric characters (up to 256 before 7.1.1) D1-15Decimal, double-precision numbers F1-9Decimal, single-precision numbers I1-9Integer (no decimal places) P1-31Packed decimal numbers DATE4Date format, stored as integer offset from base date H8Datetime format, stored as date concatenated w/ time Field Attributes USAGE Types & Lengths USAGE=format (or FORMAT=format) Syntax: USAGE = TL.NO (up to 8 characters total) T – type (A,D,F,I,P,date,H) L – total characters, including sign and decimal point (D, F, I, P) (commas add’l) N – number of decimal places. Ex: D12.2 –99,999, to 999,999, O - display options. Ex: D12.2BM

Copyright 2007, Information Builders. Slide 14 Edit OptionMeaningEffect CCommasInsert 1000’s comma (or period if CDN) cNo CommasSuppress 1000’s comma (for ‘D’ format) %Percent SignDisplay % following numeric value -Minus Sign afterDisplay minus sign on right side of field LLeading ZeroesDisplay leading zeroes BBracket NegativeEnclose negative numbers in parentheses RCredit NegativePlace “CR” after negative numbers SZero SuppressDisplay 0 value as blank M or !DFloating CurrencyFloating “$” to the left of the number !L - British pound, !E – Euro, !Y – Yen N or !dFixed CurrencyFix “$” at the left of the field width Edit Options tailor the display of the field No effect on actual field length Now use : d also (new in 7.6) !D must be last in format

Copyright 2007, Information Builders. Slide 15 UsageValueDisplay 17C ,693 D10.2S0.00 P8CR-47194,719CR D12.2M $28, B-341(341) D12.2N $ 28, F5.2% % P6L D12.5E D+04 I6MTDY20675FEB A8YYMD /06/01 Examples of USAGE Attributes

Copyright 2007, Information Builders. Slide 16 Field Attributes USAGE Date Components OptionsMeaningEffect DDayValue from 1 to 31 MMonthValue from 1 through 12 YYearTwo-digit year YYFull yearFour-digit year QQuarterValue from 1 to 4 (Q1 begins Jan) JULJulianSee yy/ddd (YYJUL - yyyy/dddd) Date components describe appearance “Traditional Dates” Ex: I8YYMD  Numeric representation of dates  Stored as A6, A8, I6, I8, P6, P8  No validation of date  Edit options to alter display “Smart Dates” Ex: YYMD  Numeric offset from Base Date  Stored as I4  Automatic validation of date  Components alter display

Copyright 2007, Information Builders. Slide 17 USAGEDISPLAY wrMtrDYYMonday, December YQ85 Q4 QYYQ YMD85/12/30 WtrMonday MDYY12/30/1985 Field Attributes USAGE Date Examples TR/tr, W/w and R/r are additional date-formatting options Various displays of 12/30/85

Copyright 2007, Information Builders. Slide 18 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Force an Automatic Datestamp with AUTODATE Automatically populates with current date/time upon Include/Update of segment where field resides AUTODATE Make any field an automatic timestamp Suggestion: one field per segment to be tracked Use for display and calculations, but cannot be controlled FOCUS and XFOCUS files only Display format is HYYMDS

Copyright 2007, Information Builders. Slide 19 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Declare How The Data Is ACTUALLY Stored Examples: FIELDNAME = EMPID,, USAGE=A3, ACTUAL=A3, $ FIELDNAME = MARGIN,, P11, Z6, $ FIELDNAME = HIREDATE,, MtrDYY, A6YMD, $ FIELDNAME = MONEY,, P17.2M, P9, $ Real type and length of field in the file (not for FOCUS files) Usually derived from existing File Descriptions like COBOL FD’s

Copyright 2007, Information Builders. Slide 20 ACTUALUSAGEMeaning DATEDate4-byte integer containing number of days from base date AnAll“n” = Alphanumeric A-Z, 0-9, and special chars D8DDouble-precision, floating-point numbers, in eight bytes F4FSingle-precision, floating-point numbers, in four bytes I1, I2, I4I, DateBinary integers:I1= one-byte, I2= half-word, I4= full-word PnPPacked decimal; “n”= 1-16 bytes, each with two digits, except for the last byte which contains a digit and the sign. Ex: P6 means 11 digits plus a sign ZnPZoned decimal; “n” = 1-31 digits, each taking a byte of storage. Last digit is digit and sign Field Attributes Format Types for the ACTUAL Attribute Convert to

Copyright 2007, Information Builders. Slide 21 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Example: FIELD=HELLO,,A20, FIELDTYPE=I, $ TABLE FILE CAR.HELLO PRINT COUNTRY IF HELLO EQ ‘HI’ OR ‘BONJOUR’ END COUNTRYHELLO USAHI FRANCEBONJOUR Field Attributes Establish an INDEX for the Field Indexes this field for quick lookup and cross-reference access COUNTRY CAR MODEL HELLO LANGUAGE WORDS Indexed view XREF

Copyright 2007, Information Builders. Slide 22 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Declare the TITLE for the Field on a Report Example: FIELD=HELLO,,A20, TITLE=‘ HI,THERE’, $ TABLE FILE CAR PRINT COUNTRY AS ‘NATION’ HELLO... HI NATIONTHERE AUSTRALIAGDAY ENGLANDTOP ’O THE MORNIN’ FRANCEBONJOUR Column title for report headings. Same as using ‘AS’ in TABLE (which also overrides TITLE)

Copyright 2007, Information Builders. Slide 23 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=,TITLE _lang DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Multilingual TITLE options (new in 7.6) Example: FIELD=HELLO,,A20, TITLE=‘ Hi,There’, TITLE_FR=‘Bonjour’, TITLE_DE=‘Hallo’, TITLE_ES=‘Hola’,$ $ SET LANG=FRE TABLE FILE CAR PRINT HELLO... TITLE with lang suffix to display alternate language in title. 30 language extensions supported.

Copyright 2007, Information Builders. Slide 24 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC[_lang]=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Document the Field in the Metadata Example: $ CREATED ON 7/13 FIELD=EMPID,, A9, DESC=’Employee ID’,$ comment DESCription for documentation. Up to 2K characters long. Use DESC_lang for languages - same as TITLE extensions (new in 7.6) All text after $ is a comment.

Copyright 2007, Information Builders. Slide 25 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Declare Acceptable Input Values for a Field Example: … ACCEPT=A or B or C, … Choose a letter: > D (FOC534) The data value is not among the acceptable values … Choose a letter: > B Specific values to be accepted when prompting during data entry -- no local validation coding needed Also notes Rectype in VSAM/FIX files WebFOCUS allows ACCEPT Pairs to display user-friendly choices in a dropdown, but still pass the actual value

Copyright 2007, Information Builders. Slide 26 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Field Attributes Solve Y2K Legacy-Date Century Issues: DEFCNT/YRTHRESH Default century and year-threshold when converting A6 or I6 to SmartDate Ex: FIELD=DT1,,USAGE=MDYY, DEFCENT=19,YRTHRESH=55,$ becomes 01/07/ becomes 01/07/ Year Century to imply for this field, default century is 1900 ex: 6/12/05 is treated as 6/12/1905 Boundary year for this field when the implied century flips; default=00 (see example)

Copyright 2007, Information Builders. Slide 27 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= GROUP Declaration Associate Consecutive Fields as One “Field” GROUP=FULLNAME, FN, A22,$ FIELD=FIRSTNAME,F, A9, $ FIELD=MIDDLE, M, A1, $ FIELD=LASTNAME, L, A12,$ Logically relates consecutive real fields as one field. Not stored, length is total of component fields TABLE FILE … PRINT FULLNAME MIDDLE END FULLNAME MIDDLE JOHN QPUBLIC Q Sum of 3 field lengths

Copyright 2007, Information Builders. Slide 28 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= GROUP Using ELEMENTS Declaration Associate Consecutive Fields as One “Field” (new in 7.6) GROUP=FULLNAME,, ELEMENTS=3,$ FIELD=FIRSTNAME,F, A9, $ FIELD=MIDDLE, M, A1, $ FIELD=LASTNAME, L, A12,$ TABLE FILE … PRINT FULLNAME MIDDLE END FULLNAME MIDDLE JOHN QPUBLIC Q Instead of adding field lengths yourself, use ELEMENTS (new in 7.6) Adding field lengths gets tricky when one of the group fields is numeric

Copyright 2007, Information Builders. Slide 29 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= DEFINE in the Master Create New Fields at Runtime - DEFINE Example: DEFINE HOUR/A2 = EDIT(‘&TOD’,’99$$$$$$’); $ DEFINE GREETING/A12 = IF (HOUR LE 12) THEN ‘GOOD MORNING’ ELSE ‘GOOD EVENING’ ; $ Identical to DEFINE in focexec. Evaluated for each segment instance retrieved when field is mentioned or used in the TABLE. Absorbs no space in the data file. Don’t forget the $ Date and Time system variables are the only ones permitted in the Master. 13 different &date configurations.

Copyright 2007, Information Builders. Slide 30 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= DEFINE in the Master Prepare Calculations in the Metadata – COMPUTE (new in 7.6) COMPUTE GREETING/A12 = IF (TIME LT 12) THEN ‘GOOD MORNING’ ELSE ‘GOOD EVENING’; $ Syntactically identical to COMPUTE in focexec. Absorbs no space in the data file. TABLE FILE CAR PRINT... COMPUTE LOCALFIELD/I5 = RCOST + DCOST; COMPUTE GREETING; AS ‘HELLO’... In Master In Focexec Note the semicolon A COMPUTE in the Master will not conflict with other COMPUTE’s of the same-name

Copyright 2007, Information Builders. Slide 31 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= DEFINE in the Master Put Screening Criteria in the Metadata – FILTER (new in 7.6) FILTER MORNING/I1 = IF (TIME LT 12) THEN 1 ELSE 0; $ Similar to COMPUTE in Master. Binary resolve (I1 only 0 or 1). Absorbs no space in the data file. Implemented as WHERE in TABLE. TABLE FILE CAR PRINT... WHERE MORNING WHERE... In Master In Focexec

Copyright 2007, Information Builders. Slide 32 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER (not local &’s) END DBA=, DBAFILE= DBA Security Restrict Access to Data END required only when DBA is present DBA=password, DBAFILE=filename DBA=SECRET,$ USER=ABC12345, ACCESS=R, RESTRICT=VALUE, NAME=MANAGER, VALUE=SALARY LT ,$ This will restrict ABC12345 to read-only access to people with salaries only under $100K Defines security access to the file and its data for each user or group. File level, Segment level, Field level, or Value-range/Expression Keep DBA security in separate file. DBA person still has full creation and modification rights Password up to 64 characters (new in 7.6)

Copyright 2007, Information Builders. Slide 33 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER (not local &’s) END DBA=, DBAFILE= Cross Reference Files Create a Larger Logical Structure KUKeyed Unique KMKeyed Multiple (non-unique join) KLKeyed Linked KLU Keyed Linked Unique Main File Top Middle Bottom Family Father Location Child Address Grandch CR File KM KLUKM Up to 256 total segments

Copyright 2007, Information Builders. Slide 34 Check the Master File Description for Valid Syntax CHECK FILE filename [PICTURE [RETRIEVAL]] [HOLD] Checks the MFD for correct syntax and logical relationships PICTUREdraws a diagram of the file – useful with JOINs in effect, and for complex structures. RETRIEVALshows the PICTURE in a retrieval-logic flow, such as putting Unique segments in-line. HOLDcreates an external file with information about the fields in the MFD. For documentation too. S1 S2 U S1 S2 U PICTURE RETRIEVAL

Copyright 2007, Information Builders. Slide 35 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER END DBA=, DBAFILE= Create a BUSINESS VIEW (BV) Into Your Real Data (WebFOCUS only – coming to FOCUS ) FILE=bv_name, VIEW_OF=real_mfd_name SEGMENT= folder_name, … FIELD=bv_fieldname, ALIAS=real_fieldname, TITLE=, … BELONGS_TO_SEGMENT=real_seg_name… SET FOCTRANSFORM=ON TABLE FILE bv_name table commands using BV field names END Business View Master All other field attributes are taken from mapped real field S1 S2 U field BV mfd Selected fields - other fields not accessible to user Identifies a Business View Use only to resolve field name conflicts

Copyright 2007, Information Builders. Slide 36 FILE=, SUFFIX=, FDFC=, FYRTHRESH=, ACCESS=, DATASET = ‘fully qualified dataset name’, SEGNAME=, SEGTYPE=, PARENT=, LOCATION=, DATASET=, CRFILE=, CRSEG=, CRKEY=, FIELD=, ALIAS=, USAGE=, ACTUAL=, FIELDTYPE/INDEX=, TITLE=, DESC=, ACCEPT=, DEFCNT=, YRTHRESH=, HELPMESSAGE=, RECTYPE=, OCCURS=,,$ GROUP=, ALIAS=, USAGE=, FIELDTYPE/INDEX=, DEFINE, COMPUTE, FILTER (not local &’s) END DBA=, DBAFILE= Introduction to Master Files