You are on page 1of 15

SYNONFAQS

1. What is Data modeling? Data modelling is a place where you can define file and its attributes.

2. How are data modelling concepts used for application systems? Data modelling helps in designing a correct database, which is essential to the successful implementation of the application system

3. What is the life cycle of application development? Life cycle covers the tasks required to start, complete and maintain an application.

4. What is data driven approach? In data driven approach, the process begins with defining the data first; subsequently functions and process are generated based on the data defined.

5. What is the advantage of a data driven approach? A data driven approach eliminates data redundancy and sets the stage for normalising the Database.

6. Which modelling method does SYNON/2E use? ENTITY - RELATION modelling method

7. What is an entity? An entity is an object which has its own properties called attributes that distinguishes it from another entity

8. What is a DOMAIN? The set of possible values an attribute can take is the 'domain' of the attribute.

9. What does the term Cardinality mean in relation to entities? Cardinality specifies whether the connection is one to one, one to many or many to many.

10. What is Normalisation? Normalisation is the process of removing data redundancy or duplication

11. What is the role of SYNON/2e in application development? Synon/2e is an application development tool that allows design, development, implementation and maintenance of applications software systems.

CA2E

Page1

SYNONFAQS
12. Name 3 important design concepts of SYNON/2E? 1. Implementation independence 2. Data driven design 3. Object - based design

13. Name some Synon products used for application development? 1. SYNON/2E -case tool 2. SYNON/1E -prototyping 3. SYNON/2G -PC based GUI 4. SYNON/CSG-client server architecture

14. What does RPM stand for? Rapid Prototyping Methodology

15. Name few components of SYNON/2E? 1. Entity relation specification 2. Access paths 3. Functions 4. Panels & Reports 5. HLL code conversion

16. What is Assimilation? Assimilation is the process of retrieving existing externally described OS/400 file definitions to SYNON/2E design model The Command is YRTVPFMDL

17. What is differentiation? Differentiation is the process in data modelling of creating new entities by splitting a current entity into two separate entities.

18. What is Referential Integrity? Referential Integrity is the process by which proper relationship is maintained between files. This is done by making certain foreign keys contain valid values in the referenced files.

19. Which Version currently working with Version 8.1

20. What is a Virtual field? A virtual field is a field that is logically present but physically not present on an access path.

CA2E

Page2

SYNONFAQS

21. How many types of files are available in Synon/2e? There are 4 types of files are available. Data Base Files: 1. REF Reference file (Master file): The REF AllFusion 2E file type should be given to AllFusion 2E files that contain basic reference data that is used by the application. 2. CPT Capture file (Transaction file): The CPT file type should be given to AllFusion 2E files that contain transaction data that is regularly captured for use by the application. Non- Data Base Files: 3. STR Structure file: The STR file attribute should be given to files that define data structures for use by functions in the implemented system. 4. RCD Record file: The RCD file attribute should be given to files that define data structures for use by programs in the implemented system.

22. What is the difference between REF and CPT files? REF file is like a master file. CPT file is like a transaction file.

23. Types of file relations? FILE TO FILE Defined as Owned by - Key Refers to - ATTR Extended by - ATTR FILE TO FIELD Known by - key Qualified by - key Includes - ATTR Has - ATTR

1. Defined as: Declaration that the file exist and created implicitly by SYNON 2. Refers to: Specifies a file refers to another file (Foreign key) 3. Includes: A file is to include all the fields that have been declared in the structure file 4. Extended by: Declares a file to be an extension of a file relation. It gives an association between one to one or one to none. Will work only if it is OWNED BY in the second file 5. Has: Declares a field to be present in a file

6. Known by: Specifies that the field is a key field. There can be more than one known by relation 7. Owned by: Defines a parent and child relationship, Eg., Order header and order details (parent key will be copied to the child) 8. Qualified by: This is a key relation used to qualify a file identifier by one or more variable factors. This is used to find out a close match (Eg., rate, discount, data, etc.). If no redirection is specified it is similar to KNOWN BY Use of FOR TEXT: It is used to further clarify a relationship. Owned by and Refers to can only have the FOR TEXT. To prevent duplicate fields SYNON uses the FOR TEXT if present or the Surrogate number Virtual fields are logically present in one file and physically present in another file. This is valid only for OWNED BY and REFERS TO relation types

CA2E

Page3

SYNONFAQS

24. Define the File to File Relations. How many types? Describe the connection between two files. File relations are Defined as (optional), Owned by, Includes, Refers to and Extended by.

25. Define File to Field relations and explain each? Field Relations is used to describe the key as well as non-key attributes of a file. Known by: define a key attribute of a file. Qualified by: define a key attribute for a file Has: define a non-key field for a file

26. What is the difference between Refers to and Owned by relation? Owned By - Implements the parent child relationship. The key field of the owning file becomes a primary key of the owned file. Refers to - the key field of the referring file become the non key attribute of the referred file.

27. What is the difference between Known by and qualified by? Known by Qualified by - It requires exact key match. - doesn't require exact key match, it will return either a previous or next value.

28. How is qualified by implemented? Qualified by is a key relation. It is used to qualify a file identifier by one or more variable factors. It is used to get the nearest, previous or next nearest record based on whether *NEXT or *PREV is specified. The field redirection should be done in the referring file. The *NEXT is implemented as SETLL and READ. The *PREVIOUS is implemented as SETGT and READP

29. What type of Relations will have the Virtual Fields? File to File Relations: Owned by, Includes, Refers to and Extended by relations.

30. What are the sharing options available for Owned By relation and Explain? *NONE and *ALL *NONE is specified for the "Sharing" parameter, then a separate entry will be added to the file for the field. *ALL is specified for the "Sharing" parameter, then no additional entry is created: the existing entry is shared. This is the default action.

CA2E

Page4

SYNONFAQS

31. What is access path? How many types & explain each. Access path is path through which you can retrieve records. There are 6 types of access path is supported by SYNON. By default Synon creates 3 access path namely Physical, Update and Retrieve access paths. 1. PHY: Physical file: Arrival sequence access path defining the based-on file. For a given AllFusion 2E file there may only be one access path of type PHY - the path will automatically be created by AllFusion 2E. 2. UPD: Update: Access path used for update. Path is keyed on AllFusion 2E fields that identify the file. For a given AllFusion 2E file there may be several different access paths of type UPD, each containing a different combination of fields. A default update path containing all fields will automatically be created by AllFusion 2E. 3. RTV: Retrieval: Access path used to retrieve records from file. The key order cannot be changed. For a given AllFusion 2E file there may be many access path of type RTV - a default path, keyed on the identifying fields for the file, will automatically be created by AllFusion 2E. Each RTV access path has an associated 'UPD' access path. 4. RSQ: Resequence: Access path used to retrieve records from file using an alternative key order. For a given AllFusion 2E file there may be many access paths of type 'RSQ'. 5. 'QRY' : Query: Access path used to retrieve records from file using an alternative key order which may include virtual fields. For a given AllFusion 2E file there may be many access paths of type 'QRY'. 6. SPN: Span: Access path used to span several different files using an alternative key order. For a given AllFusion 2E file there may be many access paths of type 'SPN'.

Sl.No. 1. 2. 3. 4. 5. 6.

Access Path Type PHY UPD RTV RSQ QRY SPN

Attributes

Key Fields

Virtual Fields

Virtual Keys

Relation Relation User User User

32. What are the access paths will allow changing the key order? RSQ, QRY and SPN access path will allow changing the key order.

33. Using which access path you can define a virtual field as a key? Using QRY access path we can add virtual field as key.

34. While generating QRY access path how many members being created. For mapping it creates Physical file (PF), Logical file and it creates a QRY in CL program.

CA2E

Page5

SYNONFAQS

35. What is 'Access Path Selection? Access Path Selection is the process that specifies which records from a file are included in the Access Path. Selection is made up of a number of select / omit criteria, each of which are based on one or more conditions. Static Selection: is built into access path. Dynamic Selection: is not built into the implementing OS/400 access path, but it is applied at run time. Dynamic selection is less efficient than static selection, but may help to reduce the number of OS/400 access paths that are required.

36. What are the Access Path auxiliaries for query Access path? Access Path auxiliaries are the three different OS/400 objects used to implement a query access path. They are logical file, physical file and control language.

37. Will synon (file) object allow more than 13,000 records?

38. How many ways, you can lock an access path? a. Temporary lock when PGMR open the function/access path, that function will be locked temporally. b. Permanent lock if the Designer has Object Ownership authority, he can implement permanent lock

39. How do you handle the access path maintenance in different situations The various access path maintenance methods are: 1. IMMED updates the changes immediately, 2. DELAYED Changes are logged and the access path updates when the file is opened. No rebuilding is done, 3. REBUILD Access path is rebuilt when the file is opened again

40. What does the term Involution mean in relationship to entities? Involutions specify whether the connection exists between the entity and itself. It is also called as self-reference.

41. How do you delete a access path which is referred by some other access path? We cannot delete an access path which is referred by some other function/access path. If you want to delete, you have to remove the (REF) relations then delete.

42. What are the default functions crated for REF and CPT file? REF File: Create object, Change object, Delete object, Edit file and Select record CPT File: Create object, Change object and Delete object

CA2E

Page6

SYNONFAQS

43. How many types of functions available in Synon/2e? a. Standard function b. Built in function c. Function fields

d. Message functions

44. What is standard function and types? Standard functions specify the program and subroutines. User can write his won codes in the User point in the action diagram. a. Database functions b. Device functions c. User functions

45. What are Database functions & types? Database function is a function, using this we can do all file operations like Create, Delete, Update, and Retrieve records. It has 4 internal objects like, a. Create object b. Delete object c. Update object

d. Retrieve object

46. What is Device function & types? Device function is a function, using this you can design the Panel (Workstations) and Report design. It has both internal and external functions. a. Print object b. Display record c. Display record 2 panel

d. Display record 3 panel e. Prompt record f. Edit record

g. Edit record 2 panel h. Edit record 3 panel i. j. k. l. Display file Edit file Select record Display transaction

m. Edit transaction n. Print file

CA2E

Page7

SYNONFAQS
47. What is device design? Device design is a panel or report design associated with a function

48. What is User function & types? Using this function, you can incorporate User written programs and subroutines into the Synon/2e generated applications. You can include these functions inside the action diagram or User written HLL. a. Execute internal Function b. Execute User Source c. Execute External Function

d. Execute user program

49. What is Built in function and give some examples? Using Built in function, you can do all arithmetic operations, string manipulations and control operations like Commit and rollback. *ADD *SUB *COMMIT *COMPUTE (Using this we can do all arithmetic operations like add, sub, mult & div) CONCAT (It joins 2 string with the conditions (*none = no blanks, *one = leave one blank, *all = leave all blanks)) *CVTVAR (It just converts the value of one type to another type) *DATE DETAILS (It gives the date details like day of week, day of year, *month, leaf year etc) *DATE INCREMENT (Using this we can add quantity of a given date and find out new date) *DIV *DIV WITH REMAINDER (Remainder value will move to another value) *DURATION (It calculates duration between 2 dates) *ELAPSED TIME (It calculates time (HH, MM, SS, MS) between 2 given time) *EXIT PROGRAM (Leave) *MODULO (It gives only remainder value) *MOVE *MOVE ALL (Move value (even constant) to variable(s)) *MULT *QUIT (It is like a goto statement in RPG, it leaves from the entire action diagram) *ROLLBACK (The changes will not be reflected when you use *ROLLBACK) *RTVCND (It specifies that the name of a given condition is to be retrieved into a function field) *SER CURSOR (It is equal to cursor position keyword in SDA) *SUBSTRING (Using this we can take a part of string from the base variable) *TIME DETAILS (It is similar to date details Built in function) *TIME INCREMENT (Using this we can add a quantity to a given time) CA2E Page8

SYNONFAQS
50. What is Function field? A function field is a field whose value is not physically stored in database. But is derived from other fields or files. Using this we can, a. SUM b. Maximum c. Minimum

d. Count e. Derived f. User

51. What are a Message function and its type? It is a type of function, using this we can send messages to Workstation using synon/2e. The message function has a. Send error message (using this we can pass a error message to the message queue) b. Send information message (using this we can pass a information message to the message queue) c. Send completion message (when a job is completed this message will appear)

d. Send status message (it gives information about the long running programs status to the message queue) e. Retrieve message (it retrieve a message from message file to the function, using this you can concat even 2 database fields) f. Execute message (Request message to be executed by the calling function)

52. What is Execute message function? Execute message function allows a request message to be executed by the calling program. The command is entered in the second level message. The message type should be "EXC". Override functions are not possible. For Open query [OPNQRY] and open database [OPNDBF] you should specify a value of the *PERM to prevent closure of file

53. What are the Elements the panel design has? A panel design has been divided into 3 ways. 1. Multiple record function (EDTFIL, DSPFIL, SELRCD) It has Standard Header, Subfile control, Subfile record, Standard footer 2. Single record function (EDTRCD, 2, 3, DSPRCD, 2, 3, PMTRCD) It has Standard Header, Key Screen, Detail Screen, and Standard footer 3. Transaction function (EDTTRN, DSPTRN) It has Subfile Standard header, Control, Subfile record, Standard footer

CA2E

Page9

SYNONFAQS
54. Print File function? Print file function allows you to print all the records from a file. We can specify 13 levels of totalling. Maximum of 13 print objects [PRTOBJ] can be used within a print file. Control breaks are defaulted based on the number of keys specified.

55. What is the difference between PRTFIL & PRTOBJ? PRTFIL is an external function, which specifies a complete report. PRTOBJ is an internal function type, which specifies a segment of a report for inclusion with in another report function.

56. How is a print object function linked to a print file? A print object function is linked to a print file by typing the line command T on the panel for the print file to see the structure of the print file. In that, insert print object function using IA or IB.

57. What is the maximum number of Level heading formats and Level total formats that can be defined in a print file? 1. A maximum of 13 levels of heading & totalling can be defined in a print file. 2. Normally the number of level headings is equal to the number of fields of the key sequence of the access path on which the PRTFIL is based on.

58. How many formats are available in PRTFIL? Report Header Top of page header First page header Level 1 header Level 2 header Final report End of report

59. What is CUR and NXT contexts used in PRTFIL and PRTOBJ functions? NXT: The NXT context defines a context relative to the CUR context of AllFusion 2E report functions: the NXT context contains the fields which are in the report format one level break higher. (See section on the CUR context for an explanation of report formats.) It can therefore be used to specify that the result of An AllFusion 2E field function (SUM, MIN, MAX, etc) is to be placed onto an appropriate report total format. The NXT context may be used only for result fields. CUR: The CUR context contains all the fields which are in a given report format of An AllFusion 2E report function.

60. How many report heading formats can be defined per print file? Of those, how many can be dropped? Only one report heading format is defined in a print file. The report heading format cannot be dropped.

CA2E

Page10

SYNONFAQS

61. Can a print object function be embedded within another print object function? (True/False) True

62. What is the maximum number of PRTOBJ functions that can be added to one PRTFIL function? 13. 63. Print file function must be constructed based on RTV, RSQ, and QRY access path only.

64. Which Access Path is needed for PRTFIL and PRTOBJ functions? QRY access path.

65. What are the 2 ways of implementing Functions in SYNON? External function: the function is implemented as a separate HLL Program. Internal function: the function is implemented as source code within that of a calling function.

66. What is User function? User functions provide a means of incorporating user programs and subroutines into SYNON/2E generated applications.

67. Define execute external function? An Execute External Function: * Allows you to specify a high level program using an action diagram. * Is implemented as a separate program * Has its own action diagram. * Can be attached to RTV/RQS/UPD access paths

68. Define execute internal function? Execute internal function allows you to specify a portion of your action diagram that can be used repeatedly. Implemented as a macro function internal source code in calling function. No access paths can be attached.

69. Define Execute user program? Execute user program is a connection between a HLL user written program and SYNON function. Neither parameter is allowed. Parameter passing is normal

CA2E

Page11

SYNONFAQS
70. How to use execute user source and to use parameters in this function? Execute user source specifies user written high level language source code is to be included within source code generated by a calling function. If the external source is RPG, then it should be in QRPGSRC. If it is a COBOL program, it should be in QCBLSRC. The parameters should be 6 characters long. The first character to be #, followed by I [Input] / O [Output] / B [Both] that last four characters being user defined. Indicators should not be conflicting.

71. What is the use of function option? Using this you can activate Confirm prompt Prompt, passing initial value to the prompt, commitment control, send error message, copy the message back to the previous PGM message queue, reclaim the resource, closing the program, bypass key screen etc.

72. Can you pass a parameter with type = (VRY) while calling EXCUSRSRC & why? We cannot pass a parameter with VRY type when we call an EXCUSRSRC. Because USRSRC is a internal function, while compiling the PGM, it may give length mis-match error will come.

73. What are the condition types used in SYNON/2E?


Condition : 'Value that a field may take' Advantage 2E has four types of conditions, divided into two categories: Status and Non Status Fields. Condition Type CMP RNG VAL LST Description Compare using an operator Valid range between two values Value List of value conditions Example Greater than 5 020 A Held, Paid, Unpaid Field Type All others All others STS STS

74. If you dont pass parameter while calling internal function what will happen? There are 2 possibilities, a. All records in the access path are read if the USER: Process Data Record contains user logic b. Only 1st record is read if the USER: Process Data Record does not contains user logic

75. How many types of parameters are there? There are 4 types. a) Input- it pass value and the final value will not returned b) Output it wont pass value but it receive value c) Both it do both a & b d) Neither it wont pass and it wont return any value.

CA2E

Page12

SYNONFAQS
76. How many roles? a) Position is equal to setll in RPG. b) Restrict is equal to CHAIN & READE opcode in RPG. c) Vary the length will be vary when you call user written program d) Map it map the attribute and lengths of the target field

77. How many ways you can pass a parameter? You can pass a FLD, RCD, and KEY as a parameter.

78. What are constructs? Constructs are the basic building blocks of action diagrams. By combining different types of constructs we define the procedural logic of an action diagram. The combination constructs are: 1. Sequential 2. Conditional 3. Iterative

79. ELM context will be used in *Arrays. Mainly it is used in CVTVAR built in function.

80. What are the different types of contexts? Types of contexts 1. DB contexts: DB1 & DB2 2. Device contexts: CTL, RCD, DTL, 2ND, 3RD, CUR, NXT, KEY 3. System contexts: JOB, PGM 4. Program contexts: PAR, WRK 5. Literal contexts: CON, CND

81. When will you use database context DB1 and DB2? When you use SPN access path, which has 2 logical paths, we can implement these 2 contexts. We can implement in EDTTRN & DSPTRN only.

82. How to use commitment control in SYNON? Commitment control can be implemented by specifying our option in function options. There are three options available viz. 1. MASTER - By choosing this option the program will run under commitment control. This program will contain appropriate commit points which will be defined in the SYNON supplied program Y2BGCTL 2. SLAVE - The program will run under commitment control. No automatic start or commit points are included. Commit points can be added using commit built-in function 3. NONE - The program does not run under commitment control. Hence, there are no commit points. Note: Physical files running under commitment control must be journalized CA2E Page13

SYNONFAQS

83. Copy back messages? Copy back messages specifies whether any messages outstanding on the programs message queue is to be copied back to the previous programs message queue when the program terminates

84. What are function options close down program & reclaim resources? Close down program: Specifies whether the last record indicator is to be set on when the program finished execution. If, 'Y' is specified, all files are closed and the program is shutdown. If blank, all files remain open and a subsequent call will be faster and perform a full program execution. In either case, all internal variables are initialised to blanks and zero on each call. Reclaim resources: The OS/400 command RCLRSC is to be invoked when the program completes execution. The command closed down any other program, files that have been called and/or opened by the program thereby reallocating their storage. Reclaim resources is valid only on external function. This does not support COBOL programs 85. What is job description? A job is a unit of work on the AS/400. Jobs run in a subsystem using system resources viz. memory, disk, etc. A job can be either interactive or batch. For interactive jobs JOD in User profile is used and for batch jobs JOBD along with SBMJOB is submitted with an object type of job description is *JOBD. Job description is a set of characteristics that define how the system handles a job. It contains: Job queue (only for batch), job priority, printer to be used, OUTQ & its priority, time slice & run priority. If none of the above is specified the system used the default job description

86. Define a sub system? Sub system is an operating environment, defined by a sub system description. All user jobs are processed in the sub system. Eg. QBASE, QBATCH, QCTL, QINTER, etc. Sub system description defines the characteristics of a sub system. ROUTING ENTRY: Specifies the program to be called to control a routing step. WORK ENTRY: Source from which jobs can be accepted. WORKSTATION ENTRY: Display stations from which users can log into the sub system

87. Open query file [OPNQRYF]?


Open query file (OPNQRYF) selection can be on: 1. Dynamic record selection 2. Dynamic keyed sequence 3. Dynamic join 4. Unique key processing 5. Group processing 6. Final total processing 7. Improve performance Query access path will be implemented through the following objects 1. CL program containing an OPNQRYF to open access path at runtime 2. OS/400 physical file used to compile programs [dummy PF] used at runtime 3. OS/400 logical file defines the key to OPNQRYF command CA2E Page14

SYNONFAQS

88. Override database [OVRDBF]? Override database [OVRDBF] lets to override the filenames or attributes of file selected when we compile/run program. Overrides can be used to change most of the attributes. To cancel revert the override database command we shall have to give delete override databases DLTOVRDBF

CA2E

Page15

You might also like