AU2013200573B2 - A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data - Google Patents

A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data Download PDF

Info

Publication number
AU2013200573B2
AU2013200573B2 AU2013200573A AU2013200573A AU2013200573B2 AU 2013200573 B2 AU2013200573 B2 AU 2013200573B2 AU 2013200573 A AU2013200573 A AU 2013200573A AU 2013200573 A AU2013200573 A AU 2013200573A AU 2013200573 B2 AU2013200573 B2 AU 2013200573B2
Authority
AU
Australia
Prior art keywords
data
field
copybook
mainframe
downloaded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
AU2013200573A
Other versions
AU2013200573A1 (en
Inventor
Derek Chapple
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2012900390A external-priority patent/AU2012900390A0/en
Application filed by Individual filed Critical Individual
Priority to AU2013200573A priority Critical patent/AU2013200573B2/en
Publication of AU2013200573A1 publication Critical patent/AU2013200573A1/en
Application granted granted Critical
Publication of AU2013200573B2 publication Critical patent/AU2013200573B2/en
Ceased legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A METHOD, PERSONAL COMPUTING DEVICE AND COMPUTER READABLE STORAGE MEDIUM FOR CALCULATING FIELD DATA FROM MAINFRAME DOWNLOADED DATA There is provided a method of calculating field data from mainframe downloaded data, the method comprising: loading copybook data; calculating field data representing a field in accordance with the mainframe downloaded data and the copybook data.

Description

A METHOD, PERSONAL COMPUTING DEVICE AND COMPUTER READABLE STORAGE MEDIUM FOR CALCULATING FIELD DATA FROM MAINFRAME
DOWNLOADED DATA
Field of the Invention [1] The present invention relates to a method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data.
[2] The invention has been developed primarily for use by personal computers using mainframe downloaded data and will be described hereinafter with reference to this application. However, it will be appreciated that the invention is not limited to this particular field of use.
Background [3] Most major banking applications are run on Mainframes - deposit systems, loans systems, and credit card systems. These systems were usually developed in the late 1970’s and are so robust and tried-and-tested that the cost of replacing them onto newer, faster machines had no cost-benefit. As a result, most banking software has remained on mainframes and newer technology has been developed to access the mainframe in a fast and aesthetically pleasing way. These ‘add-ons’ are known as ‘front-ends’ - simply they access the mainframe (at the backend) and display the data to the user (on the front-end).
[4] Most major banks have their own mainframes on which they run several banking applications and will employ mainframe experts and support staff to run and develop software on these mainframes.
[5] In Australia and New Zealand, some of the smaller institutions are not able to pay for mainframe operation costs as they do not have the account volume for a cost-effective solution. Instead such smaller institutions ‘outsource’ the running of a mainframe to an outsourced maintenance company at a fraction of the cost.
[6] Such an outsourced maintenance company maintains, develops, and complies with governing networks the software on the mainframe and may run banking software for several institutions on a single mainframe. The institution’s benefit from having banking software completely maintained at a small comparative cost. The outsourced maintenance company benefits from only having a single mainframe to maintain.
[7] According to this arrangement, the outsourced maintenance company updates each institution with daily mainframe downloaded data. In this manner, an institution may use the daily mainframe downloaded data for reconciliation, research and the like purposes. However, such daily mainframe downloaded data comprises a complicated structure that may require many man hours of analysis in identifying each field of the daily mainframe downloaded data. Such a process can not only be inaccurate, it is also time wasteful and expensive.
[8] As such, a need therefore exists for a method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data which will overcome or substantially ameliorate at least some of the deficiencies of the prior art, or to at least provide an alternative.
[9] It is to be understood that, if any prior art information is referred to herein; such reference does not constitute an admission that the information forms part of the common general knowledge in the art, in Australia or any other country.
Summary [10] The invention seeks to provide a method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data which will overcome or substantially ameliorate at least some of the deficiencies of the prior art, or to at least provide an alternative.
[11] According to one aspect, there is provided a method of calculating field data from mainframe downloaded data, the method comprising loading copybook data; calculating field data representing a field in accordance with the mainframe downloaded data and the copybook data.
[12] Advantageously, the method allows institutions, such as banking and insurance institutions, to effectively utilise the mainframe downloaded data received from a mainframe for reconciliation, research and the like purposes. The method utilises copybook data to extract the relevant field data selected by an analyst negating the requirement for the analyst to manually calculate the relevant field data, thereby saving time and expense in the process in automating the calculation of field data representing file field data according to a calculated offset position.
[13] Preferably, the field data is calculated in accordance with field name and field offset data from the copybook data.
[14] Advantageously, the method is adapted to use the field name for the purposes of naming an extracted field and the calculated field offset data in displaying the name of the relevant field.
[15] Preferably, the field data comprises data selected from the set of data comprising field name, field position, field length and field value data.
[16] Advantageously, the method allows for various data to be presented in the field data, such as the field name and field value and less importantly the field position and field length.
[17] Preferably, the field position data of the field is calculated in accordance with the field length data of another field.
[18] Advantageously, the method is adapted to ‘daisy-chain’ the field lengths of one or more fields preceding a relevant field in an automated manner for the purposes of calculating the offset of the field data within a mainframe data download.
[19] Preferably, the field data is calculated in accordance with copybook data selected from the set of copybook data comprising redefine, 88 level, binary, compressed, occurs, sign leading, sign trailing, no length identifier, comment and filler copybook data.
[20] Advantageously, the method is adapted to account for may differing constraints and conditions in calculating field data, [21] Preferably, calculating the field data further comprises receiving an offset selection and calculating the field data in further accordance with the offset selection.
[22] Advantageously, the method is adapted to allow a user to select a relevant field so as to present the relevant field data to the user.
[23] Preferably, the offset is a cursor offset.
[24] Preferably, the offset is a pointer offset.
[25] Preferably, the offset is a user specified offset.
[26] Advantageously, the user may specify the relevant field using human interface devices such as keyboards, pointers and the like. Alternatively, the user may simply input a numerical offset.
[27] Preferably, the method further comprises displaying the downloaded mainframe data in a display wherein the offset selection is referenced to a position within the display.
[28] Preferably, the display is scrollable.
[29] Advantageously, method is adapted to display the mainframe data download in a user friendly manner, wherein the user is able to scroll about the display and select one or more fields within the mainframe data download so as to be able to view the field data.
[30] Preferably, the position is a user selection [31] Advantageously, the user is able to select the relevant mainframe data to view the relevant field data.
[32] Preferably, the method further comprises receiving a second user selection and generating summary data comprising the field data calculated in accordance with the first user selection and second field data calculated in accordance with the second user selection.
[33] Advantageously, the user is able to make one or more selections, wherein the field data of the one or more selections is summarised for the user for later reference.
[34] Preferably, the method further comprises receiving updated copybook data and updating the field data in accordance with the updated copybook data.
[35] Advantageously, the method is adapted for accounting for one or more updates in the copybook data so as to negate the need for an analysis to manually recalculate the field data positions each time the copybook is updated.
[36] Preferably, the copybook comprises COBOL formatting.
[37] Advantageously, the method is adapted for use by personal computing devices using mainframe downloaded data.
[38] According to another aspect, there is provided a personal computing device for calculating field data from mainframe downloaded data comprising a processor for processing digital data; a memory device for storing digital data including computer program code and being coupled to the processor via a bus; an interface for sending and receiving digital data and being coupled to the processor via the bus; and a database for storing digital data including copybook data, wherein the processor is controlled by the computer program code to load, from the database, the copybook data; calculate field data representing a field in accordance with the mainframe downloaded data and the copybook data.
[39] Preferably, the processor is further controlled by the computer program code to calculate the field data in accordance with field name and field offset data from the copybook data.
[40] Preferably, the field data comprises data selected from the set of data comprising field name, field position, field length and field value data [41] Preferably, the processor is further controlled by the computer program code to calculate the field position data of the field in accordance with the field length data of another field.
[42] Preferably, the processor is further controlled by the computer program code to calculate the field data in accordance with copybook data selected from the set of copybook data comprising redefine, 88 level, binary, compressed, occurs, sign leading, sign trailing, no length identifier, comment and filler copybook data.
[43] Preferably, the processor is further controlled by the computer program code to receive an offset; and calculate the field data in further accordance with the offset.
[44] Preferably, the offset is a cursor offset.
[45] Preferably, the offset is a pointer offset.
[46] Preferably, the offset is a user specified offset.
[47] Preferably, the personal computing device further comprises a display device coupled to the processor via a bus, wherein the processor is further controlled by the computer program code to display the downloaded mainframe data in a display of the display device and wherein the offset selection is referenced to a position within the display.
[48] Preferably, the display is scrollable.
[49] Preferably, the position is a user selection.
[50] Preferably, the processor is further controlled by the computer program code to receive, via the interface, a second user selection and generating summary data comprising the field data calculated in accordance with the first user selection and second field data calculated in accordance with the second user selection.
[51] Preferably, the processor is further controlled by the computer program code to receive, via the interface, updated copybook data and update the field data in accordance with the updated copybook data.
[52] Preferably, the copybook comprises COBOL formatting.
[53] According to another aspect there is provided a computer readable storage medium for calculating field data from mainframe downloaded data, the computer readable storage medium having computer program code instructions recorded thereon, the computer program code instructions being executable by a computer and comprising instructions for loading copybook data; instructions for calculating field data representing a field in accordance with the mainframe downloaded data and the copybook data.
[54] Preferably, the field data is calculated in accordance with field name and field offset data from the copybook data.
[55] Preferably, the field data comprises data selected from the set of data comprising field name, field position, field length and field value data.
[56] Preferably, the field position data of the field is calculated in accordance with the field length data of another field.
[57] Preferably, the field data is calculated in accordance with copybook data selected from the set of copybook data comprising redefine, 88 level, binary, compressed, occurs, sign leading, sign trailing, no length identifier, comment and filler copybook data.
[58] Preferably, the instructions for calculating the field data further comprise instructions for receiving an offset selection and calculating the field data in further accordance with the offset selection.
[59] Preferably, the offset is a cursor offset.
[60] Preferably, the offset is a pointer offset.
[61] Preferably, the offset is a user specified offset.
[62] Preferably, the computer readable storage medium further comprises instructions for displaying the downloaded mainframe data in a display wherein the offset selection is referenced to a position within the display.
[63] Preferably, the display is scrollable.
[64] Preferably, the position is a user selection [65] Preferably, the computer readable storage medium further comprises instructions for receiving a second user selection and generating summary data comprising the field data calculated in accordance with the first user selection and second field data calculated in accordance with the second user selection.
[66] Preferably, the computer readable storage medium further comprises instructions for receiving updated copybook data and updating the field data in accordance with the updated copybook data.
[67] Preferably, the copybook comprises COBOL formatting.
[68] Other aspects of the invention are also disclosed.
Brief Description of the Drawings [69] Notwithstanding any other forms which may fall within the scope of the present invention, a preferred embodiments of the invention will now be described, by way of example only, with reference to the accompanying drawings in which: [70] Fig. 1 shows a personal computer on which the various embodiments described herein may be implemented in accordance with an embodiment of the present invention; [71] Fig. 2 shows an exemplary network on which the various embodiments described herein may be implemented in accordance with an embodiment of the present invention; [72] Fig. 3 shows an exemplary graphical user interface (GUI) allowing the user to select a downloaded mainframe file for reading and select a copybook relative to the mainframe file in accordance with an embodiment of the present invention; [73] Fig. 4 shows an exemplary GUI showing the mainframe downloaded data file in a viewing / editing area in accordance with an embodiment of the present invention; [74] Fig. 5 shows an exemplary GUI showing a user selection of an exemplary copybook mapping from a drop-down list of uploaded copybooks in accordance with an embodiment of the present invention; [75] Fig. 6 shows an exemplary GUI wherein each ‘display’ record selected will be stored in the database as the selection criteria for the user relative to the copybook mapping in accordance with an embodiment of the present invention; [76] Fig. 7 shows an exemplary GUI allowing the user to filter on the data selected in accordance with an embodiment of the present invention; [77] Fig. 8 shows an exemplary GUI displaying the results of the filter of Fig. 7.; [78] Fig. 9 shows an exemplary GUI allowing a user to select one or more mainframe downloaded data files for reading, and also to select copybooks relative to each mainframe downloaded data file for mapping in accordance with an embodiment of the present invention; [79] Fig. 10 shows an exemplary GUI displaying the copybook data with a ‘Linking Key’ column that the user can select in accordance with an embodiment of the present invention; [80] Fig. 11 shows an exemplary GUI adapted to further display the copybook data relative to the first file data with the a ‘display’ column in accordance with an embodiment of the present invention; [81] Fig. 12 shows an exemplary GUI adapted to display copybook data relative to a second file with the ‘display’ column in accordance with an embodiment of the present invention; [82] Fig. 13 shows an exemplary GUI allowing the user to filter on the data selected from the GUIs shown in Figs. 11 and 12 in accordance with an embodiment of the present invention; [83] Fig. 14 shows an exemplary GUI wherein the results of two ‘join’ tables are displayed in accordance with an embodiment of the present invention; [84] Fig. 15 shows an exemplary GUI prompting the user to a select file for summary analysis, and also to select a copybook relative to that file for mapping in accordance with an embodiment of the present invention; [85] Fig. 16 shows an exemplary GUI displaying the copybook data with the ‘display’ column in accordance with an embodiment of the present invention; [86] Fig. 17 shows an exemplary GUI displaying the results of a specific hard-coded query that allows dynamic input to output the summary results to the screen in a table format for the user to view in accordance with an embodiment of the present invention; and [87] Fig. 18 shows a computer implemented method for calculating field data from mainframe downloaded data in accordance with an embodiment of the present invention.
Description of Embodiments [88] It should be noted in the following description that like or the same reference numerals in different embodiments denote the same or similar features.
[89] Fig. 1 shows a personal computer 100 on which the various embodiments described herein may be implemented. It should be noted that the personal computer is a personal computer, such as a desktop or laptop personal computer allowing a user to receive a mainframe data download from a mainframe and calculate field data from the mainframe data download in the manner described below. In other words, the embodiments describe herein are not performed by a mainframe perse, but rather by using the personal computer 100 allowing for front-end interaction with the mainframe by analysts so as to be able to view, edit and/or analyse downloaded mainframe files.
[90] In particular the steps of the method of calculating field data from mainframe downloaded data as described in further detail below may be implemented as computer program code instructions executable by the personal computer 100. The computer program code instructions may be divided into one or more computer program code instruction libraries, such as dynamic link libraries (DLL), wherein each of the libraries performs a one or more steps of the method. Additionally, a subset of the one or more of the libraries may perform graphical user interface tasks relating to the steps of the method.
[91] The computer 100 comprises semiconductor memory 110 comprising volatile memory such as random access memory (RAM) or read only memory (ROM). The memory 100 may comprise either RAM or ROM or a combination of RAM and ROM.
[92] The computer 100 comprises a computer program code storage medium reader 130 for reading the computer program code instructions from computer program code storage media 120. The storage media 120 may be optical media such as CD-ROM disks, magnetic media such as floppy disks and tape cassettes or flash media such as USB memory sticks.
[93] The device further comprises I/O interface 140 for communicating with one or more peripheral devices. The I/O interface 140 may offer both serial and parallel interface connectivity. For example, the I/O interface 140 may comprise a Small Computer System Interface (SCSI), Universal Serial Bus (USB) or similar I/O interface for interfacing with the storage medium reader 130. The I/O interface 140 may also communicate with one or more human input devices (HID) 160 such as keyboards, pointing devices, joysticks and the like. The I/O interface 140 may also comprise a computer to computer interface, such as a Recommended Standard 232 (RS-232) interface, for interfacing the computer 100 with one or more personal computer (PC) devices 190. The I/O interface 140 may also comprise an audio interface for communicate audio signals to one or more audio devices 1050, such as a speaker or a buzzer.
[94] The computer 100 also comprises a network interface 170 for communicating with one or more computer networks 180. The network 180 may be a wired network, such as a wired Ethernet™ network or a wireless network, such as a Bluetooth™ network or IEEE 802.11 network. The network 180 may be a local area network (LAN), such as a home or office computer network, or a wide area network (WAN), such as the Internet or private WAN.
[95] The computer 100 comprises an arithmetic logic unit or processor 1000 for performing the computer program code instructions. The processor 1000 may be a reduced instruction set computer (RISC) or complex instruction set computer (CISC) processor or the like. The computer 100 further comprises a storage device 1030, such as a magnetic disk hard drive or a solid state disk drive.
[96] Computer program code instructions may be loaded into the storage device 1030 from the storage media 120 using the storage medium reader 130 or from the network 180 using network interface 170. During the bootstrap phase, an operating system and one or more software applications are loaded from the storage device 1030 into the memory 110. During the fetch-decode-execute cycle, the processor 1000 fetches computer program code instructions from memory 110, decodes the instructions into machine code, executes the instructions and stores one or more intermediate results in memory 100.
[97] In this manner, the instructions stored in the memory 110, when retrieved and executed by the processor 1000, may configure the personal computer 100 as a special-purpose machine that may perform the functions described herein.
[98] The computer 100 also comprises a video interface 1010 for conveying video signals to a display device 1020, such as a liquid crystal display (LCD), cathode-ray tube (CRT) or similar display device.
[99] The computer 100 also comprises a communication bus subsystem 150 for interconnecting the various devices described above. The bus subsystem 150 may offer parallel connectivity such as Industry Standard Architecture (ISA), conventional Peripheral Component Interconnect (PCI) and the like or serial connectivity such as PCI Express (PCIe), Serial Advanced Technology Attachment (Serial ATA) and the like.
System [100] Fig. 2 shows an exemplary network 200 on which the various embodiments described herein may be implemented. The network 200 comprises one or more personal computers 100 and at least one mainframe 205. Typically the mainframe 205 is located at a central location with the personal computers 100 being located at various institutions, such as banking institutions.
[101] There are various manners by which the personal computers 100 may receive the mainframe downloaded data from the mainframe 205. For example, personal computer 100a may be coupled to the mainframe 205 by way of computer network 180. In this manner personal computer 100a may periodically receive the mainframe downloaded data from the mainframe 205 across the network. In an alternative embodiment, personal computer 100b may be coupled directly to the mainframe 205 by way of direct communication link. Furthermore, personal computer 100c may be indirectly coupled to the mainframe 205, such as where the mainframe downloaded data is stored on computer readable storage media and physically transferred to the personal computer 100c. Yet further methods may be employed such as Connect:Direct™, SFTP, email and the like.
Credit Card Software [102] An exemplary embodiment will now be described with reference to a credit card application wherein the mainframe 205 is adapted for facilitating credit card files.
[103] Flerein, the credit card application executable by the mainframe 205 comprises several databases that may contain data about a customer, the customer’s account, the customer’s transaction details, the customer’s statement information etc. These databases are updated in a mainframe nightly process called a ‘batch’ (a set of programs) on a daily basis (such as Monday - Friday excluding public and bank holidays) by the credit card software operating on the mainframe.
[104] The software may be configured to send letters, calculate interest, send statements, create credit cards, PINs and the like. The software updates the databases on a daily basis with such information and history of each account transaction and user input.
[105] Each institution has access to the databases via a front-end, and silo technology makes sure that each institution can only access the database information relative to their institution. However, the front-end screens only display a small percentage of all details contained in each database as the screens are actually designed to perform functions rather than display all information from the database.
[106] As such, each institution receives, on a daily basis, a copy of each database relevant to their institution. For example, there may be 20 different databases, each with differing structures and fields. The institutions need this information to action the sending of their letters, action the creation of their statements, action the credit card creation, action the PIN to be sent to the customer etc.
[107] Furthermore, each of the databases has a layout describing the database data. Such as layout is defined by way of a copybook. Specifically, a copybook describes the file structure, and field details including the length of each field on the database. A copybook is normally exclusively used in mainframes.
[108] For example, a record on a database file may contain the following data: 12345EXAMPLETEXT7890 [109] And a copybook may reflect the data in the file as follows: 01 EXAMPLE FILE. 05 FIRST-NUMBER PIC 9(05). 05 SOME-TEXT PIC X(ll). 05 SECOND-NUMBER PIC 9(04).
[110] This tells the user that:
• In position 1 for 5 numeric digits is a field called ‘First Number’; THEN
• In position 6 (position 6 because it is after the first 5 numbers) is a field called ‘Some Text’; THEN • In position 17 (position 17 because it is after the first 5 numbers and 11 characters) is a field called ‘Second Number’.
[111] While the above is but a basic example, copybooks are often highly complicated structures with several fields that make it very difficult for a user to read, especially as databases can contain several thousand fields. For example, a copybook may comprise fields such as: • ‘Redefines’ fields (fields that take an original field and display it in a differing format, but not increasing the position of the field); • 88 level fields (fields that tell the kind of data that will go into a field, but will not increase the length); • Binary fields (fields that have data compressed into 2, 4, or 8 characters); • Compressed fields (fields that take up just over half of their allocated field length); • Sign leading / Sign trailing fields (fields include a sign at the beginning or end of a field that WILL increase the field position); • Fields with no length identifier (the user must calculate this depending on the fields underneath it in the structure); • Comment fields (the user must ignore these fields - the identifier of which is an asterisk in one position); • Filler fields (fields that contain useless data, but DO increase the field position on the file); and • Occurs fields representing fields that are repeated a number of times thus increasing the length of the field.
[112] The mainframe downloaded data files received by each institution are typically in a Windows™ text format (e.g. “.txt”). Furthermore, when the mainframe downloaded data is displayed by the personal computer 100, the personal computer 100 is advantageously adapted to display the mainframe downloaded data using scroll bars, allowing the user to scroll to a particular point of interest within the mainframe downloaded data.
[113] As copybooks are constantly updated, a person manually calculating the field data would have to perform a manual re-calculation, a process that can take several days for just a single copybook. As such, the personal computer 100 is adapted for updating the field data every time a new copybook is received.
Copybook [114] Exemplary copybook data is shown below:
000100* MAINFRAME DB DOWNLOAD MASTER NE2EXMPL
000200******+ + ***************** ************ *****************************NE2EXKFL 000300*** THIS IS AN EXAMPLE COPYBOOK ***NE2EXMFL
000400*********************************************************** ****** *NE2EXMPL 000500* NE2EXMPL
000600 05 NE2-RECORD PIC X(202). NE2EXMPL
000700* NE2EXMPL
000800 05 NE2-DETAIL-RECORD REDEFINES NE2-RECORD. NE2EXMPL
000900 10 NE2-REC-TYPE PICX(Ol). NE2EXMPL
001000 10 NE2-ACCOUNT-ID PIC X(10). NE2EXHPL
001100 10 FILLER PIC X (01). NE2EXMPL
001200 10 NE2-PRODUCT-ID PIC X(05). NE2EXMPL
001300 10 NE2-FILLER PIC X (01). NE2EXMPL
001400 10 NE2-OPEN-DATE PIC S9(09) NE2EXMPL
001500 SIGN TRAILING SEPARATE.NE2EXMPL
001600 10 NE2-LAST-ACTIVITY-DATE PIC S9(0S) NE2EXMPL
001700 SIGN TRAILING SEPARATE.NE2EXMPL
Q01BDQ 10 NE2-SCORE PIC S9(03) NE2EXMFL
001900 SIGN TRAILING SEPARATE.NE2EXMPL
002000 10 NE2-LOW-SCORE PIC 39(03) NE2EXMPL
002100 SIGN TRAILING SEPARATE.NE2EXMPL
002200 10. NE2-PRODUCT-INFO. NE2EXMPL
002300 15 NE2-PRODUCT. NE2EXMPL
002400 5C NE2-PROD-ID PIC X(03). NE2EXMPL
002500 20 NE2-SUB-ID PIC X(03). NE2EXMPL
002600 10 NE2-ACCT-COUNT PIC 9(01). NE2EXMPL
002700 10 NE2-OLD-EAL PIC SS(09j NE2EXMPL
002000 SIGN TRAILING SEPARATE.NE2EXMPL
002900 10 NE2-CUST-IC PIC 9(7). NE2EXMPL
003000 10 NE2-STAFF PIC X(01). NE2EXMPL
003100 10 NE2-MARKET1 PIC X (01). NE2EXMPL
003200 10 NE2-MARKET2 PIC X (01), NE2EXMPL
003300 10 NE2-MARKET3 PICX{01). NE2EXMPL
003400 10 NE2-MARKET4 PIC X (01). NE2EXMPL
003500 10 NE2-MARKET1-DT PIC S9(09) NE2EXMPL
003600 SIGN TRAILING SEPARATE.NE2EXMPL
003700 10 NE2-MARKET2-DT PIC SS(09) NE2EXMPL
003000 SIGN TRAILING SEPARATE.NE2EXHPL
003900 10 NE2-MARKET3-DT PIC S9(0S) NE2EXMFL
004000 SIGN TRAILING SEPARATE.NE2EXMPL
004100 10 NE2-MARKET4-DT PIC S9(09) NE2EXMPL
004200 SIGN TRAILING SEPARATE.NE2EXMFL
004300 10 ΝΞ2-BALANCE PIC S9(11)V99 NE2EXMPL
004400 SIGN TRAILING SE PARAT E.NE 2 EXM PL
Mainframe file download data [115] Furthermore, a portion of exemplary mainframe file download data is given below:
HOOOOOOOOOO DDMMYYYY D1035521045 PRODS O2OO1O827+O2O11O6O1+351+0OO+PR8SB31OOOOOOOOO+OOOOOOONYNNNO2OO1O615+O2OO1O615+O2O01O615· D1061505149 PROD6 020010624·!·02{ί110520+254+000+5&amp;63Β31000000000+ΟΟΟΟΟΟΟΝΥΥΥΝ020010624+020010624+0200ί0624' D1Q71629377 PROD1 020Q10118+Q20110128+3Q5+000+PR15B21QOOOOOOOO+OOQOOOONNNNNQ20010U8+Q20010118+02001Q118· D1155289495 PROD1 020010119+020110120+500+000+PR1SB71000000000+OOOOOOONNNYN020010119+020010119+020010119-D1236318421 PRODS O2OO1O821+O2O11O125+438+OOO+PR8SB42OOOOOOOOO+OOOOOO0NYYNYO2OO10821+O2OO1O821+O2OO1O821-D1300130940 PROD2 02001C213-i-G20110421+144+000+PR2SB11000000000+OOOOOOOifiIYNN020010213+020010213+020010213-D1321768047 PROD2 020010213+020110325+359+000+PR2SB81000000000+OOOOOOONNNYN020010213+020010213+020010213· D1383833506 PRODS 020010519+020110217+119+000+PR5SB51000000000+OOOOOOONNNNN020010519+020010519+020010519· DI457842426 PROD8 020010826+020110225+360+000+PR8SB21000000000+2744144YNNYN020010826+020010826+020010826 D1470477235 PROD3 020010312+020110326+419+000+PR33B81000000000+OOOOOOON7«INN020010312+020010312+020010312· D1572380926 PROD4 020010417+D201105H+185+000+PR4SB41000000000+OOOOOOONYNYY020010417+020010417+020010417 D1694218688 PRCD6 020010624+020110eil+479+000+PR6SB81000000000+OOOOOOONNYNY020010624+020010624+020010624 D1696669889 PROD2 O2OO1G216+G2Q11O1254-375+Q0O+FR25B51OOQOOOOOO+OOOOOOONNNNYO2OO1O216+O2OO1O216+CI2OO1O216-DI735223430 PROD2 O2OO1O223+O2O11O427+213+OOO+PR2SB61OOOOOOOOO+OOOOOOONYYYYO2OO1O223+O2OO10223+O2OO1O223 D1772903433 PROD6 02001062i+020110318+163+<H>0+PR6SB91000000000+OOOOOOONYYYY020010621+020010621+020010621· ΠΠ 9.0348 983 PROD3 i>20010317+O2OllO6i2+341+O0O+PR3S®710OOOOOOOO+OOOOOOONYYNNO2OOlO317+O2OOlO3n+O2OOlO317-Dl32-7681961 PROD2 020010216+020110624+241+000+PR2SB91000000000+OOOOOOONNYY74020010216+020010216+020010216· D1959247323 PROD9 O2OO1O917 + O2O11O524 + 136+OOO-+PR9SB21OOOOOOOOO+OO0OOOONNNY-NO2OO1O917+O2OO1O917+O2OO1O917 D19E3078760 PROD3 O2OO1O314+O2OUO22O+228+0OO+PR3SB41OOOOOOOOO+OOOOOOONNNYYO2OO1O314+O2OO1O314+O2OO1O314 D2021074165 PRODS 020010818+020110617+4S6+000+PR8SB21000000000+2580607YYYNY020010818+020010818+020010818-D204-5804S9G PROD1 O2OGlO117+O2OllO512+483+0OO-i-PRlSB72OOOOOOOOO+OOOOOOOSYYNYO2OOlO117+O2OOlO117+O2OOlO117-D2119347300 PROD3 O2OO10317rO2OllO12O+443+OOO-i-PR3SB91OOOOOOOOO+OOOOOOONtYYYYO2OOlO317+O2OOlO317+O2OOlO317· D2127938736 PROD1 020010128+020110123+466+000+PR1SB51000000000+OOOOOOONYNNN020010128+020010128+020010128 D2133276613 PROD9 C2O010923+020110324+145+000+PR9SB91G00000000+0000000iJYiraY020010S23+02O010923+O2001O923-D2204013.022 PRODS 020010824+020110220+243+000+PR8SB61000000000+OOOOOOONYYYY020010824+020010824+020010824-D2207062442 PROD7 020010727+020110413+191+000+PR7SB11000000000+OOOOOOONNYNN020010727+020010727+020010727-D2323982799 PROD3 O2OO1O316+O2O11O214+35O+OOO+PR3SB91OOOOOOOOO+OOOOOOONYNYNO2OO1O316+O2OO1O316+O2O01O316 D2383021600 PRODS O2OO1O823+O2O11O12O+173+OOO+PR8SB21OOOOO0OOO+OOOOOOONNYNYO2OO1O823+O2OO1O823+O2OO1O823-D24438S7766 PROD8 O2OO1O823+O2OU0417+167+OOO+PR8SB32OOOOOOOOO+OOOOOOONYYYNO2OO1O823+O2OO1O823+O2OO1O823 D2536905120 PRODS 020010514+02011031S+215+000+PR5SB91000000000+OOOOOOONNmm020010514+020010514+020010514-D255988SS45 PR0D2 020010222+020U0526+472+000+PS2SB51000000000+OOOOOOONNI4NY020010222+020010222+020010222-D2596276874 PROD9 02OOlO914+O2OllO520+347+OOO+PR9SB610OOOOOOOO+OCO0OC{)NYOT®!O2OOlO914+O2OOlO914+Q2001C914-
Field Data Extraction [116] As will be described in further detail below, the computer 100 is adapted to perform several functions, each of them relying on the calculation of every single field position and length of every single copybook loaded into the computer 100 application within seconds. The functions may comprise: • Viewing a downloaded mainframe file and displaying the field name to the user, depending on where the cursor is on the file. • Displaying only selected fields that the user has chosen from the copybook for a downloaded mainframe file. • Displaying only selected fields that the user has chosen from the copybooks of two downloaded mainframe files, linking them by a key/keys that the user also selects from the copybook. • Running a summary report of any fields that the user has chosen from the copybook for a downloaded mainframe file with a ‘count’ of each selection.
Field Extraction [117] The computer 100 executes several functions in extracting the field data from the copybook data and the mainframe downloaded data. These functions, as discussed in further detail below, include: 1. Reading the copybook data for relevant records 2. Building the copybook data 3. Add the copybook to the database [118] In reading the copybook, the computer 100 reads the entire copybook, and disregards any comment records (i.e. any records with an asterisk in position 7 of the copybook) and reorganizes any records that are split across more than one line into a single record.
[119] The process relies on the copybook being created in a standard COBOL copybook format, wherein: • After position 7 of a non-comment line, the first field is the level number; • After the level number, the next field is the name; • After the name, the next field is the ‘Picture’ clause or ‘redefines’ statement; • After the picture clause, is the Picture format; • After the picture format, is the Picture length; • After the picture length, is the optional sign information; • End of copybook records (which may be over several lines) end with a full- stop; • Positions 73-80 are informational.
[120] In building the copybook data, the computer 100 reads the concise records from the above process and calculates and stores data relative to each concise copybook record. Based on the above COBOL copybook ruling, the computer 100 checks the following structure fields, in the following order: • Level number (stores the actual number) • Name (stores the field name) • Redefines (Boolean field - whether redefines or not) • Occurs (Boolean field - whether redefines or not, and if so, the redefining field) • Picture string format (whether alpha, numeric, or alphanumeric) • Numeric picture string type (for numeric fields, whether normal, binary / computational, or compressed) • Picture string length (depending on the picture string format and string type, it calculates and stores the length) [121] Once the above attributes have been calculated for each concise copybook record, the computer 100 calculates the positions, or offsets, of each field. This is done by reading each of the organized, valid records in the copybook and adding the length of each picture string length from the above process, taking into consideration the level number, redefines field, or occurs field. For example, in the event that the redefines flag is read as positive, the positional calculation needs to go back to the original redefines level and continue the positional calculation from that point onwards.
[122] In adding the copybook data to the database the computer 100 adds each of the fields from the above processes along with the reorganized copybook record, the position / offset, and 2 Boolean fields to a the database as a table comprising ‘Display’ and ‘Linking Key’ columns. The table is named by the user relative to the copybook that the computer 100 is mapping, typically, definable dynamically by the user, wherein the computer 100 stores this lookup information in the database, allowing the user to link a copybook with a database name (or downloaded file).
[123] For example, a user can define the copybook relative to the downloaded Customer database, as ‘Customer’. This will allow the user to easily understand that when reading the downloaded Customer database file, selecting the ‘Customer’ table will provide the correct mapping.
[124] Once the database contains all of the information relative to a copybook, the computer 100 can be employed by the user to extract field data in the manner described in further detail below.
Display of the field data
[125] The computer 100 is adapted to prompt the user to select a downloaded mainframe file for reading and select a copybook relative to the mainframe file for mapping. In this example, the user would select the ‘Customer’ copybook mapping from a drop-down list of uploaded copybooks. An exemplary GUI 300 allowing the user to select a mainframe file for reading and select a copybook relative to the mainframe file for mapping is given in Fig. 3.
[126] Once done, the computer 100 is adapted for loading the mainframe downloaded data file into a viewing / editing area known as a text-box as is shown in exemplary embodiment 400 as given in Fig. 4. The computer 100 may additionally load the positional information into an array such as a table held in memory for quicker access, so as to allow the user to view the field data for each selected element of the mainframe field data.
[127] Specifically, when the user places the cursor on the screen, the computer 100 is adapted to calculate the position of the record in the file (the line index), the offset from the first character of the record (the column index), and if valid, the selected area length (the selected line index).
[128] The computer 100 is then adapted to sequentially loop through the array until the offset is greater than the column index and the previous array record is less than the column index (i.e. the position of the cursor is numerically in between two offsets), and displays the name field relative to that offset on the screen. In this manner, the user can immediately see the field name relative to the data they have clicked on.
[129] If the user selects (highlights) some of the data on the file, the computer 100 is adapted for calculating the selected length (selected line index). Herein, the computer 100 similarly sequentially loops through the array looking for an exact offset and length match to the column index and selected line index. If found, the selected field will also be displayed, which may differ from the field that the cursor is on.
Viewing selected fields from a file [130] The computer 100 is adapted for prompting the user to select a mainframe data download file for reading, and also to select a copybook relative to the selected mainframe data download file for mapping. In this example, the user selects the exemplary copybook mapping from a drop-down list of uploaded copybooks, as is shown in the exemplary embodiment given in Fig. 5.
[131] Once done, the computer 100 is adapted to display the copybook with the aforementioned ‘Display’ column that the user can select. Each ‘display’ record selected will be stored on the database as the selection criteria for the user relative to the copybook mapping. Such an exemplary graphical user interface is shown in Fig. 6.
[132] Thereafter, the computer 100 is adapted to allow the user to filter on the data selected wherein the user will not be able to filter on any fields that have not been selected and the query is stored for use later in the process. Such an exemplary graphical user interface 700 is shown in Fig. 7.
[133] As such, the computer 100 is adapted to create a ‘display’ table in the database comprising columns that reflect the field names (i.e. the ‘Display’ fields selected) so as to be able to use the offset and length of each of the ‘Display’ fields to add that data (i.e. the offset and length for each ‘Display’ field from the input file) into the relative database column. The computer 100 does this for each field / column selected by the user, and for every record that the computer 100 reads until the end of the input file.
[134] In this manner, the database now contains a ‘display’ table that contains records of all of the file’s chosen-field data stored in columns named that of the copybook selected fields for display. The computer 100 is then adapted to query the display table using the saved ‘filter’ query built in the prior process and the results are output to the screen in a table format for the user to view. Such an exemplary graphical user interface is shown in Fig. 8.
Viewing selected fields from multiple files linked by key [135] In a yet further embodiment, the computer 100 is adapted to prompt the user to select one or more mainframe downloaded data files for reading, and also to select copybooks relative to each mainframe downloaded data file for mapping. An exemplary GUI 900 allowing a user to select one or more mainframe downloaded data files for reading, and also to select copybooks relative to each mainframe downloaded data file for mapping is shown in Fig. 9. In this embodiment, the computer 100 advantageously is adapted for joining two or more downloaded mainframe files in the manner described below.
[136] Once done, the computer 100 is adapted to display the copybook data with the aforementioned ‘Linking Key’ column that the user can select. The ‘Linking Key’ field lengths must match as this is the key that will link the 2 tables together. Each ‘Linking Key’ record selected will be stored on the databases as the key to link the tables relative to each copybook mapping. Such an exemplary graphical user interface 1000 is shown in Fig. 10.
[137] Furthermore, the computer 100 is adapted to further display the copybook data relative to the first file data with the aforementioned ‘Display’ column that the user can select. Each ‘display’ record selected will be stored on the database as the selection criteria for the user relative to the copybook mapping. Such an exemplary graphical user interface 1100 is shown in Fig. 11.
[138] Furthermore, the computer 100 is adapted to create a ‘Joinl’ table in the database with columns that reflect the field names (i.e. the ‘Display’ fields selected). The computer 100 then uses the offset and length of each of the ‘Display’ fields and adds that data (i.e. the offset and length for each ‘Display’ field from the input file) into the relative database column. The computer 100 does these for each field / column selected by the user, and for every record that it reads until the end of the input file.
[139] In this manner, the database now contains a ‘JoinT table that contains records of all of the first file’s chosen-field data stored in columns named that of the copybook selected fields for joining with the second table and display thereafter.
[140] When this process is complete, the computer 100 is adapted to display copybook data relative to the second file with the aforementioned ‘Display’ column that the user can select. Each ‘display’ record selected will be stored on the database as the selection criteria for the user relative to the copybook mapping. Such an exemplary graphical user interface 1200 is shown in Fig. 12.
[141] Hereafter the computer 100 is adapted to create a ‘Join2’ table in the database with columns that reflect the field names (i.e. the ‘Display’ fields selected) so as to use the offset and length of each of the ‘Display’ fields to adds the data (i.e. the offset and length for each ‘Display’ field from the input file) into the relative database column. The computer 100 does these for each field / column selected by the user, and for every record that the computer 100 reads until the end of the 2nd input file.
[142] In this manner, the database now contains ‘JoinT and \Join2’ tables that contain records of all of the first and second file’s chosen-field data stored in columns named that of each copybook selected fields relative to each file.
[143] As such, the computer 100 is adapted to allow the user to filter on the data selected. The user will not be able to filter on any fields that have not been selected. Such an exemplary graphical user interface 1300 is shown in Fig. 13.
[144] Furthermore, the computer 100 is adapted to create a ‘join’ SQL query with or without a ‘where’ condition (i.e. depending on whether there is an additional filter selected), such as SELECT * FROM Joinl INNER JOIN Join2 ON Joinl.[ Linking Key 1] = Join2.[ Linking Key 2] [145] The computer 100 then interrogates the two ‘Join’ tables in the database and the results are output to the screen in a table format for the user to view. Such an exemplary graphical user interface 1400 is shown in Fig. 14.
Summary Report [146] The computer 100 is adapted to prompt the user to a select file for summary analysis, and also to select a copybook relative to that file for mapping. Such an exemplary graphical user interface 1500 is shown in Fig. 15.
[147] Once done, the computer 100 is adapted to display the copybook data with the aforementioned ‘Display’ column that the user can select. Each ‘display’ record selected will be stored on the database as the selection criteria for the user relative to the copybook mapping. Such an exemplary graphical user interface 1600 is shown in Fig. 16.
[148] Hereafter, the computer 100 is adapted to create a ‘SummaryReport’ table in the database with columns that reflect the field names (i.e. the ‘Display’ fields selected) so as to be able to use the offset and length of each of the ‘Display’ fields to add that data (i.e. the offset and length for each ‘Display’ field from the input file) into the relative database column. The computer 100 does this for each field / column selected by the user, and for every record that it reads until the end of the input file.
[149] In this manner, the database now contains a ‘SummaryReport’ table that contains records of all of the file’s chosen-field data stored in columns named that of the copybook selected fields for display. The computer 100 is then adapted to query the Summary Report table using a specific hard-coded query that allows dynamic input to output the summary results to the screen in a table format for the user to view. The hard-coded (dynamic) query may be as follows: "SELECT SummaryRpt.[ Fields Selected] , Count ([ Fields Selected]) AS [COUNT] FROM (SummaryRpt) GROUP BY SummaryRpt.[ Fields Selected] ORDER BY SummaryRpt.[ Fields Selected] DESC;"
Where 'Fields selected' reflects the name of each field selected by the user [150] Such an exemplary graphical user interface 1700 is shown in Fig. 17. Method [151] Fig. 18 shows a computer implemented method 1800 for calculating field data from mainframe downloaded data. The method 1800 is executed by one or more personal computers 100 and in particular one or more personal computers 100 as substantially shown in Fig. 2. As discussed above, the computer 100 may be coupled indirectly to the mainframe 205 via a network 180, directly using a data link, or manually, such as by physical transfer of storage media comprising the mainframe downloaded data.
[152] The method 1800 starts at step 1805 where the computer 100 is adapted for loading copybook data, relating to the mainframe data download data.
[153] At step 1810 the computer 100 is adapted to calculate field data representing a field in accordance with the mainframe downloaded data and the copybook data.
[154] In one embodiment, the computer 100 is adapted to calculate the field data in accordance with field name and field offset data from the copybook data. As will be described in further detail below, the field offset data is used to calculate the position of the field value within the mainframe downloaded data and the field name is associated with the field value when presented to the user. In this manner, the field data comprises field name, field position, field length and field value data and the field position data of the field is calculated in accordance with the field length data of another field, such as one or more previous fields.
[155] Furthermore, the computer 100 is adapted so as to use copybook field data including redefine, 88 level, binary, compressed, occurs, sign leading, sign trailing, no length identifier, comment and filler copybook field data.
[156] When calculating the field data, the computer 100 may be adapted to receive an offset selection from a user relating to a position within the mainframe data download. As such, in calculating the field data, the computer 100 is further adapted for receiving an offset selection and calculating the field data in further accordance with the offset selection. The offset selection may be received in any manner and may be a cursor offset, pointer offset and the like or even a user specified offset.
[157] In a preferred embodiment, the computer 100 is adapted to display the mainframe data in a display wherein the offset selection is referenced to a position within the display. Such a display preferably comprises a scrollable window allowing a user to navigate within the mainframe downloaded data. The position may be a user selection such as a click on a mouse or the like. Furthermore, the computer 100 may be adapted for generating receiving more than one user selections and generating summary data comprising the field data calculated in accordance with the first user selection and second field data calculated in accordance with the second user selection.
[158] In a preferred embodiment, the computer 100 is adapted for dealing with changes in copybook data. In this manner, the computer 100 is adapted for receiving updated copybook data and updating the field data in accordance with the updated copybook data.
Interpretation
In accordance with [159] As described herein, ‘in accordance with’ may also mean ‘as a function of and is not necessarily limited to the integers specified in relation thereto.
Composite items [160] As described herein, ‘a computer implemented method’ should not necessarily be inferred as being performed by a single personal computer such that the steps of the method may be performed by more than one cooperating personal computers.
[161] Similarly objects as used herein such as ‘web server’, ‘server’, ‘client personal computer’, ‘computer readable medium’ and the like should not necessarily be construed as being a single object, and may be implemented as a two or more objects in cooperation, such as, for example, a web server being construed as two or more web servers in a server farm cooperating to achieve a desired goal or a computer readable medium being distributed in a composite manner, such as program code being provided on a compact disk activatable by a license key downloadable from a computer network.
Wireless: [162] The invention may be embodied using devices conforming to other network standards and for other applications, including, for example other WLAN standards and other wireless standards. Applications that can be accommodated include IEEE 802.11 wireless LANs and links, and wireless Ethernet.
[163] In the context of this document, the term “wireless” and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a non-solid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. In the context of this document, the term “wired” and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a solid medium. The term does not imply that the associated devices are coupled by electrically conductive wires.
Processes: [164] Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the specification discussions utilizing terms such as “processing”, “computing”, “calculating”, “determining”, “analysing” or the like, refer to the action and/or processes of a computer or computing system, or similar electronic personal computer, that manipulate and/or transform data represented as physical, such as electronic, quantities into other data similarly represented as physical quantities.
Processor: [165] In a similar manner, the term “processor” may refer to any device or portion of a device that processes electronic data, e.g., from registers and/or memory to transform that electronic data into other electronic data that, e.g., may be stored in registers and/or memory. A “computer” or a “ personal computer” or a “computing machine” or a “computing platform” may include one or more processors.
[166] The methodologies described herein are, in one embodiment, performable by one or more processors that accept computer-readable (also called machine-readable) code containing a set of instructions that when executed by one or more of the processors carry out at least one of the methods described herein. Any processor capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken are included. Thus, one example is a typical processing system that includes one or more processors. The processing system further may include a memory subsystem including main RAM and/or a static RAM, and/or ROM.
Computer-Readable Medium: [167] Furthermore, a computer-readable carrier medium may form, or be included in a computer program product. A computer program product can be stored on a computer usable carrier medium, the computer program product comprising a computer readable program means for causing a processor to perform a method as described herein.
Networked or Multiple Processors: [168] In alternative embodiments, the one or more processors operate as a standalone device or may be connected, e.g., networked to other processor(s), in a networked deployment, the one or more processors may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer or distributed network environment. The one or more processors may form a web appliance, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
[169] Note that while some diagram(s) only show(s) a single processor and a single memory that carries the computer-readable code, those in the art will understand that many of the components described above are included, but not explicitly shown or described in order not to obscure the inventive aspect. For example, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
Additional Embodiments: [170] Thus, one embodiment of each of the methods described herein is in the form of a computer-readable carrier medium carrying a set of instructions, e.g., a computer program that are for execution on one or more processors. Thus, as will be appreciated by those skilled in the art, embodiments of the present invention may be embodied as a method, an apparatus such as a special purpose apparatus, an apparatus such as a data processing system, or a computer-readable carrier medium. The computer-readable carrier medium carries computer readable code including a set of instructions that when executed on one or more processors cause a processor or processors to implement a method. Accordingly, aspects of the present invention may take the form of a method, an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of carrier medium (e.g., a computer program product on a computer-readable storage medium) carrying computer-readable program code embodied in the medium.
Carrier Medium: [171] The software may further be transmitted or received over a network via a network interface device. While the carrier medium is shown in an example embodiment to be a single medium, the term “carrier medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “carrier medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by one or more of the processors and that cause the one or more processors to perform any one or more of the methodologies of the present invention. A carrier medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media.
Implementation: [172] It will be understood that the steps of methods discussed are performed in one embodiment by an appropriate processor (or processors) of a processing (i.e., computer) system executing instructions (computer-readable code) stored in storage. It will also be understood that the invention is not limited to any particular implementation or programming technique and that the invention may be implemented using any appropriate techniques for implementing the functionality described herein. The invention is not limited to any particular programming language or operating system.
Means For Carrying out a Method or Function [173] Furthermore, some of the embodiments are described herein as a method or combination of elements of a method that can be implemented by a processor of a processor device, computer system, or by other means of carrying out the function. Thus, a processor with the necessary instructions for carrying out such a method or element of a method forms a means for carrying out the method or element of a method. Furthermore, an element described herein of an apparatus embodiment is an example of a means for carrying out the function performed by the element for the purpose of carrying out the invention.
Connected [174] Similarly, it is to be noticed that the term connected, when used in the claims, should not be interpreted as being limitative to direct connections only. Thus, the scope of the expression a device A connected to a device B should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means. “Connected” may mean that two or more elements are either in direct physical or electrical contact, or that two or more elements are not in direct contact with each other but yet still co-operate or interact with each other.
Embodiments: [175] Reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment, but may. Furthermore, the particular features, structures or characteristics may be combined in any suitable manner, as would be apparent to one of ordinary skill in the art from this disclosure, in one or more embodiments.
[176] Similarly it should be appreciated that in the above description of example embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the Detailed Description of Specific Embodiments are hereby expressly incorporated into this Detailed Description of Specific Embodiments, with each claim standing on its own as a separate embodiment of this invention.
[177] Furthermore, while some embodiments described herein include some but not other features included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the invention, and form different embodiments, as would be understood by those in the art. For example, in the following claims, any of the claimed embodiments can be used in any combination.
Specific Details [178] In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Terminology [179] In describing the preferred embodiment of the invention illustrated in the drawings, specific terminology will be resorted to for the sake of clarity. However, the invention is not intended to be limited to the specific terms so selected, and it is to be understood that each specific term includes all technical equivalents which operate in a similar manner to accomplish a similar technical purpose. Terms such as "forward", "rearward", "radially", "peripherally", "upwardly", "downwardly", and the like are used as words of convenience to provide reference points and are not to be construed as limiting terms.
Different Instances of Objects [180] As used herein, unless otherwise specified the use of the ordinal adjectives “first”, “second”, “third”, etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
Comprising and Including [181] In the claims which follow and in the preceding description of the invention, except where the context requires otherwise due to express language or necessary implication, the word “comprise” or variations such as “comprises” or “comprising” are used in an inclusive sense, i.e. to specify the presence of the stated features but not to preclude the presence or addition of further features in various embodiments of the invention.
[182] Any one of the terms: including or which includes or that includes as used herein is also an open term that also means including at least the elements/features that follow the term, but not excluding others. Thus, including is synonymous with and means comprising.
Scope of Invention [183] Thus, while there has been described what are believed to be the preferred embodiments of the invention, those skilled in the art will recognize that other and further modifications may be made thereto without departing from the spirit of the invention, and it is intended to claim all such changes and modifications as fall within the scope of the invention. For example, any formulas given above are merely representative of procedures that may be used. Functionality may be added or deleted from the block diagrams and operations may be interchanged among functional blocks. Steps may be added or deleted to methods described within the scope of the present invention.
[184] Although the invention has been described with reference to specific examples, it will be appreciated by those skilled in the art that the invention may be embodied in many other forms.
Industrial Applicability [185] It is apparent from the above, that the arrangements described are applicable to the financial transaction processing industries.

Claims (20)

  1. Claims 1) A method of calculating field data from mainframe downloaded data, the method comprising: a) loading copybook data; b) receiving a user selection of one or more mainframe downloaded data files for reading; c) receiving a user selection of one or more copybook fields relative to each mainframe downloaded data file for mapping; d) extracting field data in accordance with the selected mainframe downloaded data files and the selected copybook fields as field data tables; e) receiving a user selected linking key; and f) extracting linked information from each of the field data tables associated with the linking key.
  2. 2) The method as claimed in claim 1, wherein the method comprises the steps a) receiving a user selection of fields in the extracted linked information to be displayed; and b) displaying the selected fields of the extracted linked information.
  3. 3) The method as claimed in any one of claims 1 or 2, wherein field data is calculated in accordance with field name and field offset data from the copybook data.
  4. 4) The method as claimed in any one of claims 1-3, wherein calculating the field data further comprises a) receiving an offset selection; and b) calculating the field data in further accordance with the offset selection.
  5. 5) The method as claimed in claim 4, further comprising displaying the mainframe downloaded data in a display wherein the offset selection is referenced to a position within the display.
  6. 6) The method as claimed in claim 5, wherein the position is a user selection.
  7. 7) The method as claimed in any one of claims 1-6, further comprising receiving updated copybook data and updating the field data in accordance with the updated copybook data.
  8. 8) A personal computing device for calculating field data from mainframe downloaded data comprising: a) a processor for processing digital data; b) a memory device for storing digital data including computer program code and being coupled to the processor via a bus; c) an interface for sending and receiving digital data and being coupled to the processor via the bus; and d) a database for storing digital data including copybook data, e) wherein the processor is controlled by the computer program code to: i) loading copybook data; ii) receiving a user selection of one or more mainframe downloaded data files for reading; iii) receiving a user selection of one or more copybook fields relative to each mainframe downloaded data file for mapping; iv) extracting field data in accordance with the selected mainframe downloaded data files and the selected copybook fields as field data tables; v) receiving a user selected linking key; and extracting linked information from each of the field data tables associated with the linking key.
  9. 9) The personal computing device as claimed in claim 8, wherein the processor is further controlled by the computer program code to: i) receive a user selection of fields in the extracted linked information to be displayed, and ii) display the selected fields of the extracted linked information.
  10. 10) The personal computing device as claimed in any one of claims 8-9, wherein the processor is further controlled by the computer program code to calculate the field data in accordance with field name and field offset data from the copybook data.
  11. 11) The personal computing device as claimed in any one of claims 8 - 10, wherein the processor is further controlled by the computer program code to: a) receive, via the interface, an offset; and b) calculate the field data in further accordance with the offset.
  12. 12) The personal computing device as claimed in claim 11, further comprising a display device coupled to the processor via a bus, wherein the processor is further controlled by the computer program code to display the mainframe data in a display of the display device and wherein the offset selection is referenced to a position within the display.
  13. 13) The personal computing device as claimed in claim 12, wherein the position is a user selection.
  14. 14) The personal computing device as claimed in any one of claims 8 - 13, wherein the processor is further controlled by the computer program code to receive, via the interface, updated copybook data and update the field data in accordance with the updated copybook data.
  15. 15) A computer readable storage medium for calculating field data from mainframe downloaded data, the computer readable storage medium having computer program code instructions recorded thereon, the computer program code instructions being executable by a computer and comprising: a) instructions for loading copybook data; b) instructions for receiving a user selection of one or more mainframe downloaded data files for reading; c) instructions for receiving a user selection of one or more copybook fields relative to each mainframe downloaded data file for mapping; d) instructions for extracting field data in accordance with the selected mainframe downloaded data files and the selected copybook fields as field data tables; e) instructions for receiving a user selected linking key; and f) instructions for extracting linked information from each of the field data tables associated with the linking key.
  16. 16) The computer readable storage medium as claimed in claim 15, wherein the computer program code instructions comprise a) instructions for receiving a user selection of fields in the extracted linked information to be displayed; and b) instructions for displaying the selected fields of the extracted linked information.
  17. 17) The computer readable storage medium as claimed in any one of claims 15 - 16, wherein field data is calculated in accordance with field name and field offset data from the copybook data.
  18. 18) The computer readable storage medium as claimed in any one of claims 15 - 17, wherein the instructions for calculating the field data further comprises instructions for receiving an offset selection and calculating the field data in further accordance with the offset selection.
  19. 19) The computer readable storage medium as claimed in claim 18, further comprising instructions for displaying the downloaded mainframe data in a display wherein the offset selection is referenced to a position within the display.
  20. 20) The computer readable storage medium as claimed in any one of claims 15 -19, further comprising instructions for receiving updated copybook data and updating the field data in accordance with the updated copybook data.
AU2013200573A 2012-02-03 2013-02-04 A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data Ceased AU2013200573B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2013200573A AU2013200573B2 (en) 2012-02-03 2013-02-04 A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2012900390 2012-02-03
AU2012900390A AU2012900390A0 (en) 2012-02-03 A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data
AU2013200573A AU2013200573B2 (en) 2012-02-03 2013-02-04 A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data

Publications (2)

Publication Number Publication Date
AU2013200573A1 AU2013200573A1 (en) 2013-08-22
AU2013200573B2 true AU2013200573B2 (en) 2018-08-09

Family

ID=48986321

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2013200573A Ceased AU2013200573B2 (en) 2012-02-03 2013-02-04 A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data

Country Status (1)

Country Link
AU (1) AU2013200573B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151608A (en) * 1998-04-07 2000-11-21 Crystallize, Inc. Method and system for migrating data
US20070174294A1 (en) * 2006-01-09 2007-07-26 Infosys Technologies Ltd. Automated downloading from mainframe to local area network
US20070294677A1 (en) * 2006-06-16 2007-12-20 Business Objects, S.A. Apparatus and method for processing cobol data record schemas having disparate formats

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151608A (en) * 1998-04-07 2000-11-21 Crystallize, Inc. Method and system for migrating data
US20070174294A1 (en) * 2006-01-09 2007-07-26 Infosys Technologies Ltd. Automated downloading from mainframe to local area network
US20070294677A1 (en) * 2006-06-16 2007-12-20 Business Objects, S.A. Apparatus and method for processing cobol data record schemas having disparate formats

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Lott, S. F., ‘COBOL Data Definition Entry Processing’, [retrieved from internet on 31 July 2017] <URL: https://web.archive.org/web/20100602072522/http://cobol-dde.sourceforge.net/> published on 02 June 2010 as per Wayback Machine. *

Also Published As

Publication number Publication date
AU2013200573A1 (en) 2013-08-22

Similar Documents

Publication Publication Date Title
US8418140B2 (en) Serviceability and configuration management
CN110647579A (en) Data synchronization method and device, computer equipment and readable medium
CN109829012B (en) Data synchronization method and device
US6408303B1 (en) System and method for automated building of a trading partner profile
AU2009238294B2 (en) Data transformation based on a technical design document
US9928283B2 (en) Tracing data through a transformation process using tracer codes
US8037115B1 (en) Method and system to compensate for inaccuracy associated with processing values with finite precision
CA2831381C (en) Recovery of tenant data across tenant moves
US10552383B2 (en) Method and system for data conversion and data model optimization
EP3455713A1 (en) Data flow design with static and dynamic elements
JP2002538546A (en) ABAP Code Converter Specifications
US8244696B2 (en) Methods and systems for supporting multiple deployment models of enterprise business applications
CN108897874B (en) Method and apparatus for processing data
CN107665227B (en) Data version control method and data version controller
CN108228551B (en) excel data import method, device, equipment and computer readable storage medium
CN110851209A (en) Data processing method and device, electronic equipment and storage medium
US8326902B2 (en) Online database modeling
US20210124752A1 (en) System for Data Collection, Aggregation, Storage, Verification and Analytics with User Interface
US9934017B2 (en) Method and a system for merging several binary executables
US20100228739A1 (en) Methods and Systems for Automatically Determining a Default Hierarchy from Data
CN110889013B (en) Data association method, device, server and storage medium based on XML
CN108694172B (en) Information output method and device
CN109358943B (en) Page configuration method and device, electronic equipment and storage medium
AU2013200573B2 (en) A method, personal computing device and computer readable storage medium for calculating field data from mainframe downloaded data
US11748325B2 (en) System and method for generating multicategory searchable ternary tree data structure

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)
MK14 Patent ceased section 143(a) (annual fees not paid) or expired