Professional Documents
Culture Documents
Schlumberger Public
Workflow/Solutions Training
Copyright Notice
2008 Schlumberger. All rights reserved. No part of this manual may be reproduced, stored in a retrieval system, or translated in any form or by any means, electronic or mechanical, including photocopying and recording, without the prior written permission of Schlumberger Information Solutions, 5599 San Felipe, Suite100, Houston, TX 77056-2722.
Disclaimer
Use of this product is governed by the License Agreement. Schlumberger makes no warranties, express, implied, or statutory, with respect to the product described herein and disclaims without limitation any warranties of merchantability or fitness for a particular purpose. Schlumberger reserves the right to revise the information in this manual at any time without notice.
Trademark Information
*Mark of Schlumberger. Certain other products and product names are trademarks or registered trademarks of their respective companies or organizations.
Schlumberger Public
Table of Contents
About this Manual...................................................................................................1
Learning Objectives.............................................................................................................1 What You Will Need ............................................................................................................1 What to Expect ....................................................................................................................2 Course Conventions............................................................................................................2 Icons.....................................................................................................................................4
Module 1
Lesson 1
OFM Basics.......................................................................................7
OFM Database ................................................................................................7
Learning Objectives.............................................................................................................7 OFM Data Tables ........................................................................................................8 Standard Data Tables..................................................................................................8 Exercise 1 Exercise 2 Lesson 2 Exploring Other Data Tables ...............................................................12 Studying OFM Defined Data Tables ...................................................13 OFM Defined Data Tables ........................................................................................12
Schlumberger Public
The OFM Defined Table Manager............................................................................13 OFM Workspace............................................................................................14 About Shared Workspace / My Workspace..............................................................15 Creating a Shared Workspace..................................................................................15 Creating a New My Workspace that is Linked to the Shared Workspace...............20 Linking an Existing OFM Project Workspace to a Shared Workspace ...................22 Creating a Standalone Snapshot of a My Workspace and its Shared Workspace .................................................................................................................24 Creating a Copy of the Shared Workspace..............................................................27 (Optional) Migrating an OFM 2004 Database to OFM 2007....................................29 Exercise 3 Exercise 4 Exercise 5 Exercise 6 Exercise 7 Opening an OFM Workspace..............................................................30 Changing the Database .......................................................................30 Changing the Well Symbol Size ..........................................................31 Changing the Database in a Workspace ............................................32 Reversing the Changes .......................................................................32
Module 2
Project Creation..............................................................................35
OFM Table Types..........................................................................................35 Project Creation .............................................................................................37 OFM Loadable ASCII Flat File Formats........................................................38
Viewing the (ASCII) Text Load Files .........................................................................39 Analyzing Data Files..................................................................................................43 Study Other Text Format Files ..................................................................................46 Exercise 8 Exercise 9 Exercise 10 Exercise 11 Exercise 12 Exercise 13 Exercise 14 Exercise 15 Exercise 16 Exercise 17 Exercise 18 Lesson 6 Exercise 19 Exercise 20 Exercise 21 Exercise 22 Creating a Project from ASCII Text Files ............................................46 Creating Files and New Workspace....................................................50 Using Batch Loading (optional) .........................................................50 Creating a Workspace From PI/Dwights Production Files ...............51 Loading PI/Dwights Production File ..................................................56 Loading PI/Diwghts 298 Production File ...........................................56 Creating a Workspace from an Existing Access Database..............56 Associating Tables to the Project ......................................................59 Associating Group Level Tables to the Project.................................73 Associating the Available Tables.......................................................76 Linking to an Access Database .........................................................77 Creating an OFM Project from an External Excel Spreadsheet.......84 Associating Additional Tables to the OFM Project............................88 Advanced Topic: Linking to an ODBC Data Source (Optional).......89 Linking to SQL Server........................................................................96
Schlumberger Public
Module 3
Lesson 7
Project Administration...................................................................99
Changing the Layout .....................................................................................99
Learning Objectives...........................................................................................................99 Opening Panes..........................................................................................................99 Hiding/Showing Panes ............................................................................................100 Docking Panes/Disabling Auto Hide .......................................................................100 Floating/Docking Panes ..........................................................................................100 Positioning Panes ....................................................................................................100 Detaching Tabs from Panes....................................................................................101 Editing the Database ...............................................................................................101 Editing OFM Units....................................................................................................103 Multipliers .................................................................................................................104 PVT Data..................................................................................................................104
ii OilField Manager 2007 Fundamentals
Editing Project Structure..........................................................................................105 Editing Schema Table .............................................................................................105 Editing Categories ...................................................................................................112 Review Questions ...........................................................................................................114 Summary .........................................................................................................................114
Module 4
Prerequisites....................................................................................................................117 Learning Objectives.........................................................................................................117 Lesson 8 Map Association Data..................................................................................117 Editing Map Association Data..........................................................................117 Exercise 23 ..............................................................................................................117 Exercise 24 Lesson 9 Exercise 25 Exercise 26 Exercise 27 Exercise 28 Exercise 29 Exercise 30 Exercise 31 Moving the Legend (Optional) .........................................................119 Modifying Well Symbols...................................................................120 Displaying the Well Names on the Basemap..................................121
Schlumberger Public
Modifying Map Limits...............................................................................................123 Adding Map Headers .......................................................................124 Adding Map Annotations..................................................................129 Displaying Deviation Information.....................................................134 Zooming & Panning .........................................................................135 Using Irregular Zoom .......................................................................136 Changing the Map Scale.........................................................................................129
Using Track Cursor..................................................................................................136 Using Workbook Mode............................................................................................136 Exercise 32 Exercise 33 Creating New Annotations...............................................................137 Editing Annotations ..........................................................................138
Module 5
Lesson 10 Lesson 11
Filtering .........................................................................................145
Filter by Completion.................................................................................146 Filtering by Completion ....................................................................146 Filtering by Table Data.....................................................................151 Filter by Table Data .................................................................................150
iii
Filtering by Category........................................................................153
Question ..........................................................................................................................154 Filter by Match .........................................................................................154 Filtering by Match.............................................................................155 Filtering by Query.............................................................................157 Filter by Query .........................................................................................157 Exercise 37 Exercise 38 Lesson 15 Lesson 16
Additional Filtering Options......................................................................................162 Invert Filter ...............................................................................................163 Using the Invert Filter .......................................................................163 Filtering by DCA Data ......................................................................163 Flagging Items..................................................................................163 Saving Filters....................................................................................165 Using the Project Filter.....................................................................169 Filter by DCA Data...................................................................................163 Exercise 39 Exercise 40 Exercise 41 Exercise 42 Lesson 17 Exercise 43
Project Filter.............................................................................................169
Module 6
Lesson 18 Lesson 19
Learning Objectives.........................................................................................................177
Question...................................................................................................................183 Calculated Variables................................................................................183 Adding Ratio Variable ......................................................................184 Using Cumulative Variable ..............................................................185 Creating Calculated Variables .........................................................187 Creating Date/Event Variables ........................................................187 Creating a Calculated Variable........................................................188 (Dynamic) Computing Variables......................................................188 Creating a Variable ..........................................................................189 Plotting Variables Versus Date........................................................189 Creating Text Display Variables ......................................................189 Using Calculated Fields ...................................................................194
OilField Manager 2007 Fundamentals
Exercise 46 Exercise 47 Exercise 48 Exercise 49 Exercise 50 Exercise 51 Exercise 52 Exercise 53 Exercise 54 Lesson 21 Exercise 55
iv
Exercise 56
Module 7
Lesson 22
Plotting ..........................................................................................201
Basics of Plotting .....................................................................................201 Creating a Graph with One Y-Axis ..................................................202 Modifying Graph Properties.............................................................204 Creating a Graph with Two Y-Axes.................................................211 Creating a Plot with Multiple Graphs ...............................................213 Creating Bar Charts .........................................................................215 Using Plot Lock and Graph Blow Up Options.................................218 Creating a Stacked Plot on Entities.................................................220
Schlumberger Public
Learning Objectives.........................................................................................................201 Exercise 57 Exercise 58 Exercise 59 Exercise 60 Lesson 23 Lesson 24 Exercise 61 Exercise 62 Exercise 63 Lesson 25 Lesson 26 Lesson 27 Lesson 28 Lesson 29 Exercise 64 Exercise 65 Exercise 66 Exercise 67
Stacked Plot on Variables .......................................................................223 Creating a Stacked Plot on Variables..............................................223 Using Sum/Average/% Contribution Types ....................................226 Creating Plot Overlay.......................................................................230 Using Plot Annotations.....................................................................233 Sum/Average/% Contribution Types ......................................................226 Plot Overlay .............................................................................................230 Plot Annotations.......................................................................................232 Plot-Related Tools/Utilities ......................................................................235
Viewing XY Coordinates with Corresponding Points On the Plot..........................235 Plot Legends with Scroll Bars..................................................................................236 Compute Line ..........................................................................................................236 Creating a Plot with Three Graphs..........................................................................240 Review Questions ...........................................................................................................240 Summary .........................................................................................................................241
Module 8
Reporting ......................................................................................243
Prerequisites....................................................................................................................243 Learning Objectives.........................................................................................................243 Lesson 30 Lesson 31 OFM Reports ...........................................................................................243 Report Variables......................................................................................244 Rules ........................................................................................................................243
Exercise 68 Exercise 69 Lesson 32 Exercise 70 Exercise 71 Lesson 33 Lesson 34 Lesson 35 Exercise 72 Exercise 73
Creating a Monthly Report...............................................................244 Reporting Calculated Variables.......................................................247 Creating a Daily Report....................................................................247 Using a Daily Frequency Calculated Variable ................................248 Creating a Sporadic Report .............................................................249 Formatting a Report .........................................................................252
Question...................................................................................................................248 Sporadic Report.......................................................................................249 Format a Report ......................................................................................251 Additional Report Tools ...........................................................................260 Creating Maximum Monthly Oil Production ....................................262
Using Additional Formatting/Processing Features .................................................261 Exercise 74 Other Report Tools ..................................................................................................263 Creating a Table from the Report............................................................................265 Exercise 75 Exercise 76 Exporting to Microsoft Excel ............................................................268 Exporting Data from the Report Module to Text Files ....................270
Schlumberger Public
Module 9
Lesson 36 Lesson 37 Lesson 38
Exporting.......................................................................................273
Export Database Tables..........................................................................273 Exporting Database Tables .............................................................274 Export Variables to Table........................................................................276 Export Text Load Files ............................................................................276
Exporting Table Definitions......................................................................................276 Exporting Table Data...............................................................................................277 Exporting Calculated Variables ...............................................................................277 Scheduling (Eclipse) Exports ..................................................................................278 Exporting DCA Data ................................................................................................279 Review Questions ...........................................................................................................280 Summary .........................................................................................................................280
Module 10
Lesson 39
vi
Group .......................................................................................................................284 DCA..........................................................................................................................284 Units .........................................................................................................................285 Exercise 78 Grouping Data by Date ....................................................................285 Date Display.............................................................................................................287 Multiply By Factor ....................................................................................................287 Lesson 40 Lesson 41 Data Normalization..................................................................................288 Using Data Normalization................................................................289 Data Register...........................................................................................291 Exercise 79
Exercise 80 Creating a Variable to Represent the Average Monthly Oil and Creating a Data Register.........................................................................................292 Review Questions ...........................................................................................................296 Summary .........................................................................................................................296
Schlumberger Public
vii
Schlumberger
Learning Objectives
At the completion of this training, you will be able to: Create an OFM project. Analyze project data using the various OFM modules. Describe the design of the OFM tables (including keys). Explain the DOs and DONTs of specific types of OFM tables. Create an OFM workspace. Create a standalone OFM project or one that is linked to an external data source or a combination of both.
Schlumberger
What to Expect
In each module within this training material, you will encounter the following: Overview of the module Prerequisites to the module (if necessary) Learning objectives A workflow component Lesson(s), which explain about a subject or an activity in the workflow Procedure(s), which show the sequence of steps needed to perform a task Exercises, which allow you to practice a task by using the steps in the procedure with a data set Summary of the module Questions about the module Scenario-based exercises
Schlumberger Public
Course Conventions
The instructions for the procedures and exercises in this manual are written using the following conventions.
NOTE: Some of the conventions used in this manual indicate the information to enter, but are not part of the information For example: Quotation marks and information between brackets indicate the information you should enter. Do not include the quotation marks or brackets when you type your information.
Represents references to dialog box names and application areas or commands to be performed. For example, Open the Open Asset Model dialog box. Used to denote keyboard commands. For example, Type a name and press Enter. Identifies the name of Schlumberger software applications, such as Petrel or GeoFrame. Identifies the first use of important terms or concepts. For example, Stacking of data Indicate values that the user must supply. "sqlplus <username>/<password> ", usually with a sentence that defines the values. Represent file names or directories. "... edit the file lease.dat and..." Represent lists and option areas in
OilField Manager 2007 Fundamentals
Schlumberger
a window, such as Attributes list or Select Options area. Characters typed in fixedwidth Represent code, sql, and other literal text that the user sees or types. For example: sqlplus <username>/<password> ".
Instructions to make menu selections are also written using bold text and an arrow indicating the selection sequence, as shown below: 1. Click File > Save (the Save Asset Model File dialog box opens.) OR Click the Save Model toolbar button.
Schlumberger Public
Schlumberger
Icons
Throughout this manual, you will find icons in the margin representing various kinds of information. These icons serve as ata-glance reminders of their associated text. See below for descriptions of what each icon means.
Tips This icon points you to a tip that will make your work
Notes This icon indicates that the following information is particularly important.
Best Practices This icon indicates the best way to perform a given task when different options are available.
Schlumberger Public
Warnings This icon indicates when you need to proceed with extreme caution.
Questions This icon identifies the questions at the end of each lesson.
Procedures This icon identifies the steps required to perform a given task.
Exercise This icon indicates that its your turn to practice the procedure.
Review Questions This icon identifies the review questions at the end of each module.
Prerequisites This icon identifies any prerequisites that are required for the course, or for individual modules.
Learning Objectives This icon identifies any learning objectives set out for the course, or for the current module.
What you will need This icon indicates any applications, hardware, datasets, or other material required for the course.
Schlumberger
NOTES
Schlumberger Public
Schlumberger
NOTES
Schlumberger Public
Schlumberger
OFM Basics
Module 1
OFM Basics
This section addresses the overall structure of the OFM database and workspace. Its sole purpose is to help you understand the basic architecture of the OFM database and workspace so that you can correctly create your OFM projects.
Learning Objectives
At the completion of this module, you will be able to: Describe the OFM data tables Use the OFM Defined Table Manager Create a Shared Workspace Link a new Workspace to the Shared Workspace Link an existing My Workspace to a Shared Workspace Create a copy of a Shared Workspace.
Schlumberger Public
Lesson 1
OFM Database
OFM can be viewed as having two integrated layers - database and application. Basically, the database layer handles the data part; and the application controls the user interface, as well as the processing data/information per request. OFM database is Microsoft Access-based. All data/information are stored in tables (and sometimes views). Therefore, OFM database has all the characteristics of a relational database, including constraints, keys, and indices. There are three main classes (types) of tables in an OFM database: Data Table System and Configuration Table OFM -Managed Table
There are two types of data tables in an OFM project: Standard Data Tables that have no prefix OFM Defined Data Tables that have OFM_Data_ as a prefix
Previous versions of OFM also had OFM Defined System Data tables that had _OFM_SYS_ as a prefix. In OFM 2007 all the information that was stored in the OFM Defined System Data tables is now stored in the *.OFM workspace file.
OFM Basics
Schlumberger
NOTE: There are only two types of tables in OFM 2007, OFM-defined database tables having the prefix OFM_DATA_ and standard database data tables. Previous versions of OFM had tables containing the prefix _OFM_SYS_. All the information that was stored in those tables is now stored in the *.OFM workspace file.
A standard data table is any table that does not have the OFM_DATA_ prefix. The table must have a primary key and may contain constraint and indexing information. Each field in the table will have designated data types, i.e., date/time, number, or text and size, i.e., long integer, double precision for number field, or 20 spaces wide for text field. Assigning the correct data types and sizes will insure no unexpected loss of data from truncation or rounding at load time. For example, a table to store timeindependent data is shown in the following image.
Schlumberger Public
In the above example, the UNIQUEID field is a text field that is 20 characters wide. In addition, it is designated as the primary key field in this HEADERID table (indicated by the key icon in the left). Also, as it is the primary key of the table (and later you will know that it is the master key of the OFM project) it carries additional properties (seen in the lower section, General tab). Please reference Relational Database concepts for further information.
Schlumberger In the image below, the HEADERID table is the master table for the OFM project, as indicated by the key icon to the left of the table name.
OFM Basics
The UNIQUEID field is a field within the HEADERID table of type text that has a size of 20 and is designated as the primary key field in the HEADERID table, as indicated by the key icon to the left of the field name in the OFM Representation box and in the Attr column in the Available Fields box. There are many fields in this table that are number (numeric) fields. For example, if you select the XCOOR field from the list, you would see the following:
NOTE: Not all field properties are displayed by OFM in the Available Fields section. To view any additional field properties open the table in Access in Design view and select the field. The additional properties will be defined on the General tab.
Schlumberger Public
The XCOOR field is a number field, with double precision and no decimal place assigned in display. Also, it is not indexed and can accept a null value.
OFM Basics
Schlumberger In the following image other field types can be seen in the HEADERID table. For example, the YCOOR field is of type Double, UPPERPERF is of field type Single, and COMPLETIONDATE is of field type Date/Time.
When the field is a number, assigning the appropriate field type will save space in the database. By design, OFM requires the designation of a MASTER table, which normally stores static well information such as Well Alias, Well Coordinates, etc The primary key of this master table is the main (MASTER) key of the whole OFM project. HEADERID table in the above example is a master table. To create a project OFM requires that a table be designated as the master table and that a field in the master table be designated as the primary key for the project. In the previous images the HEADERID table is the master table and the UNIQUEID field is the primary key. The master table contains static data about the primary key. The primary key is usually the completion name and the table would contain static data like the completions XY coordinate, alias, completion date, total depth, etc. Many other data tables may contain more than one keyed field. For example, a date-dependent table must have at least two keys: one is the entity key (similar to the UNIQUEID key); the other is the date key. Now take a look at a monthly frequency table.
Schlumberger Public
10
Schlumberger An OFM project can consist of many table types. Some table types contain more than one keyed field. For example, a monthly or daily table, which is date dependent, would have two keys: the primary key and a date/time key. In the following image a monthly table is highlighted.
OFM Basics
Schlumberger Public
As seen above, this MONTHLYPROD table has two keys. The UNIQUEID key joins this MONTHLYPROD table to the HEADERID table, in a relational manner. However, the primary entity key of one table does not have to be identical to the primary entity key (master key) of the OFM project. As long as a relationship (join) can be established between the two tables (normally via an intermediate field could be a foreign key), there is no violation in the design of the OFM database. For example, if you have a table like this:
This can be joined to the HEADERID table as long as there exists a way to relate Reservoir (in this RES_PROD table) to the
OilField Manager 2007 Fundamentals 11
OFM Basics
Schlumberger UNIQUEID field in the HEADERID table. In this illustrative database, there is a table that contains such valuable information. The relationship between them could be established as shown below.
NOTE: You do not have to physically make the joins between the tables.
The data tables store data that have got loaded into the project. Please take a look at a few data tables to experiment.
Schlumberger Public
Exercise 1
NOTE: There is a special type of data table named *_Adjustments in the Access database. These tables store prior cumulative production for the respective date-dependent tables. For example, open the Demo2007.mdb database with Access, the MONTHLYPROD table will have an adjustments table named MONTHLYPROD_Adjustm ents. The instructor will explain why this special table type may be needed.
Explore the DAILYPROD, TEST and CHOKE tables in the Demo2007.mdb database. How many keys are there in the CHOKE table? Which key is the primary key?
The instructor will explain why the CHOKE table is a special type of table in OFM.
12
Schlumberger data. Even though OFM-defined data tables are basically data tables, the data that are stored in them can be sensitive to changes; therefore, it is not recommended that the data be manipulated manually.
OFM Basics
Exercise 2
Using Microsoft Access, open the Demo2007.mdb database and study the OFM-defined data tables.
Schlumberger Public
NOTE: Refer to Lesson 2 for more information on My Workspace and Shared Workspace concepts.
13
OFM Basics
Schlumberger
Lesson 2
OFM Workspace
The following eight system tables were removed from the Access database:
NOTE: There are three types of OFM-defined tables which have the prefixes _OFM_SYS_, OFM_DATA_ and OFM_DATA_DCA_.
The first step taken was to extract all the information stored in the _OFM_SYS_Configuration table and put it in a HTML file with the suffix *.OFM. When any version of OFM 2007 is used to open a *.mdb project created with OFM 2004 or earlier, a XML file with the suffix *.OFM is created and the information from all eight tables with the prefix _OFM_SYS_ is written to this file not just the _OFM_SYS_Configuration table. This *.OFM file is referred to as the OFM workspace file. The _OFM_SYS_Configuration table is not deleted from the Access database and can be used to restore the *.OFM workspace file to the configuration it had when the project was converted if the *.OFM workspace file should ever become corrupt, however, any changes to the project configuration that occur after the project is converted are stored only to the *.OFM workspace file; the _OFM_SYS_Configuration table becomes obsolete.
NOTE: If the project was a OFM2007 project and had an existing *.OFM workspace the default setting in OFM 2007 is to backup the *.OFM workspace file and is recommended. If the project was a *.mdb project created with OFM 2004 or earlier then the backup message will not display and all the information in the eight system tables will be written to the OFM 2007 *.OFM workspace file.
Schlumberger Public
The second step was to remove the remaining seven tables having the prefix _OFM_SYS_, i.e., System tables, from the Access database. This step occurred in OFM 2007. When any project created in a previous version of OFM is opened with OFM 2007, the information that originally resided in the eight system tables is written to the OFM 2007 *.OFM workspace file. If the project was created in OFM 2004 or earlier, then the information is taken from all eight system tables. If a project was created with OFM 2005 or upgraded to OFM 2005, then the information is taken from the OFM 2005 *.OFM workspace and all the system tables except the _OFM_SYS_Configuration table, which would only exist if the project had be upgraded to OFM 2005 and would not exist if the project was created with OFM 2005. The system files in any project created in a previous version of OFM become obsolete when upgraded to OFM 2007.
14
Schlumberger
OFM Basics
A Shared Workspace can be a standalone workspace or a linked workspace. A typical Shared Workspace can be a workspace linked to a company database or a standalone project created using ASCII files. The primary benefit of a Shared Workspace is the ability to share a project with multiple users while restricting those users from modifying shared files. The functionality to create a shared workspace is the same as with OFM 2005 or OFM 2004, using linked tables or ASCII files. The only difference is once the workspace is created the items in the Shared Workspace will be referenced using the word My, as in My Analysis, My Calculated Variables, My Categories, etc. If you link to the Shared Workspace using the Link to a Shared Workspace File: functionality, you will see the same items referenced using the word Shared; the items in the users linked workspace just created will be referenced using the word My. You will be able to add, edit or delete any of the items referenced as My, but will not be able to add, edit or delete any of the items referenced as Shared. In your training data set is an Access database named Company Data Source.mdb. The following workflow will create a Shared Workspace that is linked to the Company Data Source.mdb file. The Shared Workspace will then be linked to, illustrating how a user would access the Shared Workspace using the Shared Workspace / My Workspace concept. In this example the external data source is an Access database but it could be any external data source, Oracle, SQL, Excel, etc.
NOTE: In OFM 2007.1 the word Team was used. It was replaced in OFM 2007.2 with the word Shared.
NOTE: The procedure which follows would be performed by a nominated Owner of the Shared Workspace, typically a Team Leader or some other responsible person in the organization.
15
OFM Basics
Schlumberger 1. Launch OFM 2007. 2. Select File > New Workspace. The New OFM Workspace window displays.
3. Click the browse button to the right of the Workspace File field. The New Workspace window displays.
Schlumberger Public
4. In the File Name field, type Shared Workspace and click OK.
16
Schlumberger You are returned to the New OFM Workspace window. A default name using the same prefix as the Workspace File name displays in the Database File field.
OFM Basics
5. Locate the section named How do you want to define your project? and select the Design it interactively option.
Schlumberger Public
17
OFM Basics
Schlumberger Public
18
OFM Basics
9. Click Add Link Tables. The Open window displays. 10. Select Company Data Source.mdb and click Open. The Select Table(s) to Link window displays. 11. Click Select All to map all the tables to the project using the same workflow as in OFM 2004 or OFM 2005. The Shared Workspace.mdb database and Shared Workspace.OFM workspace file represent a workspace that is to be shared by multiple users. The users would access the Shared Workspace using the Link to a Shared Workspace File functionality. This functionality will be illustrated next but first lets add some output to the Shared Workspace.OFM workspace file making note that everything created or currently referenced in this workspace uses the word My, as can be seen in the Analysis pane where the folder is named My Analysis. 12. Select Analysis > Bubble Map. The Open Bubble Map window displays. Create a bubble map and from the Analysis pane rename the bubble map Shared_Bubble_Map. 13. Select Analysis > Report. The Edit Report window displays. Create a report and from the Analysis pane rename the report Shared_Report. 14. Select Database > Calculated Variables. The Calculated Variables window displays. Create a calculated variable name Shared_CV.
Schlumberger Public
NOTE: All the analysis items created are placed in folders that are referenced using the word My. That means that anyone with access to the Shared Workspace.OFM workspace file can potentially open the workspace file and add, edit, or delete any of the items in the workspace. To prevent unauthorized users from accessing the shared workspace, it needs to be secured from those users.
19
OFM Basics
Schlumberger
Schlumberger Public
20
Schlumberger 10. Right-click on the Shared_Bubble_Map and select Save As New Node. The bubble map can be copied to the My Analysis folder. Rename the bubble map My_Bubble_Map.
OFM Basics
11. Select Database > Calculated Variables. There is a My Calculated Variables folder and a Shared Calculated Variables folder. 12. Expand the Shared Calculated Variables folder. The Shared_CV variable previously created is available. 13. Select Company_CV and right-click. Note that the only selection for you is to copy the calculated variable. Add, edit, or delete options are not available. 14. Right-click on Company_CV and select Copy.
Schlumberger Public
21
OFM Basics
Schlumberger 15. Click OK. Enter My_CV as the name for the new calculated variable. The variable is listed below the My Calculated Variables folder.
It is important to review and note that previously a workspace was created that was to be shared to other users. Upon opening that workspace directly you will see the word My on all the items because it is a standalone project that was created with ASCII files or is linked to an external data source. When you create a My Workspace that is linked to that Shared Workspace will see Shared on all the items in the workspace previously created and My on all the items created in the My Workspace just created. The items are labeled as My or Shared depending on from which workspace they are being viewed.
22
Schlumberger 3. Select Database > Shared Workspace. The Shared Workspace form opens.
OFM Basics
Now navigate to the Workspace file, which will represent the Shared Workspace to which you wish to Link. 4. Click Add. 5. Navigate to Shared Workspace.OFM and click Open.
Schlumberger Public
6. OFM offers you the option to rename this Shared Workspace. (Remember, you may choose one of several Workspace files to be the current Shared Workspace.)
7. If you wish to accept the default, click OK. 8. You then return to the Shared Workspace form, which displays the list of available Shared Workspaces. Check the
23
OFM Basics
Schlumberger box next to the one that you wish to make the current active Shared Workspace and click OK.
Schlumberger Public
9. Once you are satisfied, click OK. Your OFM session should now display an Analysis pane with two Workspaces: your pre-existing Workspace (My Workspace) and the newly linked Shared Workspace (Shared Workspace).
24
Schlumberger 1. To create a Standalone Snapshot, select Database > Workspace Snapshot. The Workspace Snapshot window displays.
OFM Basics
2. Click the browse button to the right of the Workspace File list field. 3. The Open window displays.
Schlumberger Public
4.
Type Snapshot in the File name list field and click Open.
25
OFM Basics
Schlumberger 6. Open the newly created workspace Snapshot.OFM. In the Analysis pane the Share_Report, the Shared_Bubble_Map, the My_Report, and the My_Bubble_Map have been combined into a single My Analysis folder, as shown below.
Schlumberger Public
7. Select Database > Calculated Variables. Both the Shared_CV and the My_CV will have been combined into just a single My Calculated Variables folder, as shown below.
NOTE: All the items in the Snapshot.OFM workspace can be edited by the user. The snapshot could be sent to a co-worker, a partner company who shares interest in the project or to Schlumberger support for troubleshooting purposes.
26
Schlumberger
OFM Basics
Schlumberger Public
5. Click OK. Close the My Workspace.OFM file and open the Copy of Shared Workspace.OFM file.
27
OFM Basics
Schlumberger The data and information will be the same as the original Shared Workspace.OFM file up until the date the snapshot was taken.
Schlumberger Public
28
Schlumberger
OFM Basics
Schlumberger Public
4. Select the file name and click Open. 5. A confirmation dialog displays enabling you to confirm that you wish to convert the OFM project.
6. Click Yes. A second confirmation dialog displays prompting you to confirm if you wish to use the HEADERID as the OFM master table.
OFM Basics
Schlumberger
Exercise 3
To open an OFM workspace: 1. From the File menu select Open Workspace. The Open OFM Workspace window displays.
Schlumberger Public
2. Select the name of the file you wish to load and click Open. The basemap loads in the OFM main window.
Exercise 4
In this exercise you will re-attach the workspace to a new project (database), while still retaining the properties contained in the workspace file. 1. From the Database menu select Change Database. The Open dialog displays. 2. Navigate to the location of the desired database, select the file and click Open. The basemap displays.
30
Schlumberger
OFM Basics
Exercise 5
In this exercise you will modify the well symbol size. Change the well symbol size to 1.5. 1. Select Edit > Map >Symbols. The Well Symbols dialog displays.
Schlumberger Public
2. Locate the Size section and change the Value to 1.5. 3. Click OK.
NOTE: If you need clarifications, please do not hesitate to ask your instructor.
31
OFM Basics
Schlumberger
Exercise 6
NOTE: Notice that the basemap header, well symbols, and the plot template are on the workspace level, independent of the database. This is the advantage of having created a workspace that pulls data from various identically designed databases.
In this exercise you will change the database in a workspace. 1. Select the Base Map1 from the Analysis pane. From the Database menu, select Change. 2. Locate the Training directory and go to Buildit2. Select Waterflood.mdb. Click Open. 3. Notice how the size of the well symbols has been adopted from the settings saved in the workspace file.
Exercise 7
NOTE: If you choose to create a brand new database at project creation time, you will have to populate the data in the next steps (after Step 5). OFM supports various methods of loading data to the OFM project, such as using the Data Loader. The next section demonstrates such functionalities.
1. Change the database back to Demo2007.mdb. 2. Resize the well symbol from 1.5 back to 1.
Schlumberger Public
Review Questions
What are the names of the data tables used in OFM and what is the purpose of each one? What is the purpose of the OFM Defined Table Manager? What is the benefit of using a Shared Workspace? Why would you want to link My Workspace to the Shared Workspace? When is it useful to create a copy of a Shared Workspace?
Summary
In this module, you: Familiarized yourself with the OFM database and OFMdefined data tables Reviewed the OFM workspace Learned the basics about the Shared Workspace and My Workspace concepts Created a Workspace Snapshot
32
Schlumberger Copied a Shared Workspace Migrated an OFM 2004 database into OFM 2007.
OFM Basics
In the next module, you will learn how to create and associate data with OFM projects.
Schlumberger Public
33
OFM Basics
Schlumberger
NOTES
Schlumberger Public
34
Schlumberger
Project Creation
Module 2
Project Creation
In this module, we will cover the most common ways to create and get data into an OFM project. The structure of the project should be carefully designed before actually launching the first creation step. Data cannot be lost or changed by specifying incorrect tables. If a project table does not match the data source the data will simply not load or will not be viewable but nothing will happen to the data.
Prerequisites
Before getting to the actual data populating exercises, it would be useful to understand the OFM data table types and specifications.
Learning Objectives
In this module you will learn to: Analyze table types Populate project with ASCII data files (OFM formats) Populate project with ASCII data files (PI/Dwights formats) Link the project with data from external ODBC sources.
Schlumberger Public
Lesson 3
OFM data are stored in Microsoft Access tables, which follow relational database design concepts. In addition, OFM tables have their own constraints and properties. Understanding the table structures in order to correctly construct the project will save you time and also guarantee the normal behavior and data integrity of your created project.
35
Project Creation
Schlumberger The following summary table provides information about the most commonly used OFM tables:
Table Type MASTER Number of Keys 1Completion Key Types Entity Key Data Types Comments MUST also be of STATIC type. The master (entity) key (also called completion) is preferably Text (String) The key could be either completion or foreign key At most 1 record per day per entity. At most 1 record per month per entity (day value is not considered)
STATIC
Entity
DAILY
Entity Date
Date
Schlumberger Public
MONTHLY
Entity Date
Date
Num/Date
SPORADIC DUALKEY
Num/Date Num
LOG
Text Date
MARKER
Entity Name
Text
At most 1 record per day per entity Intra-day records per entity are allowed Entity key MUST be Wellbore. Name key is the trace name. Entity key MUST be Wellbore. Name key is the marker name.
36
Schlumberger
Project Creation
Number of Keys 2
Comments Entity key MUST be Wellbore. Name key is the fault name. Entity key MUST be Wellbore.
DEVIATION
Entity Depth
Num
PATTERN
LOOKUP
Text Text Date Completion Num The entity key could be of any level. Fields in lookup table MUST all be numeric. The entity key could be of any level. Entity key MUST be Wellbore. Name key is the marker name.
Schlumberger Public
Entity
Entity Name
Text
Lesson 4
Project Creation
An OFM project can be defined/created using a variety of methods: Creating it directly from an Access database Using a template Designing it interactively using linked tables Creating it from a data source like ASCII Flat Files, OFM3 Project Database or PI/Dwights Linking to a shared workspace file.
In the next section you will define/create a project using ASCII Flat Files, PI/Dwights DMP2 Production files, an Access database, and Linked Tables.
OilField Manager 2007 Fundamentals 37
Project Creation
Schlumberger
Lesson 5
In this section, you will learn the formats of OFM loadable ASCII Flat Files for various table types. You will then create a new OFM project from the text files (provided in the installed program directory). You MUST load the definition file and the (master) key data file (in that order) first. Most of the ASCII data files do not have to be loaded into your OFM project in order. Load the table definition file (for one or many tables) before loading the data files for those tables. If you choose to create the tables interactively (without using the definition files), they MUST exist before the data files can be loaded. This is also true if you want to load data into a group table (different entity key than the key in the master table), as you must define that group entity before OFM can load the data. For example, if you want to load production data at the reservoir level into a table called RES_PROD, the reservoir entity has to be associated (as a sort category, a foreign key, a wellbore, etc.) before load time. The table definition for that table also has to be created beforehand.
Schlumberger Public
TIP: Most of the time, each data file contains information from only one table. Multiple data files can be loaded into one table (appending). One definition file can hold information of one or more tables. Multiple files (definition and data) can be loaded into the project at the same time.
OFM automatically recognizes the table types if the text load files have some specific extensions. If the data files dont have the commonly used extensions that OFM expects, they will be treated as typical data files, and will be parsed into the specified tables. Here are some commonly used file extensions: *.def table definition file *.xy master (key) data *.srt sort category data *.dly daily frequency data *.prd monthly frequency data *.tst test (sporadic) data *.lku lookup data *.xrf cross-reference data *.par parser (i.e., calculated variable) data *.dev deviation data *.not note (i.e., plot annotation) data *.flt fault data *.log log (trace) data *.mrk marker data *.wbd wellbore diagram data *.pat pattern data *.ano map annotation data
38
Schlumberger We have constantly used the terms definition file and data file. Not all the tables in OFM require table definitions before load time. These are tables that do not require table definitions before load time: Deviation table Fault table Marker table Sort category (filter) table Pattern table Wellbore diagram table Parser table*
Project Creation
*Parser table is not a typical table in many ways, even though parser information does get stored in a table.
Schlumberger Public
39
Project Creation
Schlumberger 6. Click Open. The definition file displays, as shown below (partial file only):
Schlumberger Public
Notes:
The row beginning with the *Tablename keyword defines the table name, table type and indicates that it will be the master table. The file format is space delimited so whatever text lies between the next two spaces, consecutive spaces are treated as one, will be the name of the table, followed by the table type and the master table designation. In this example HEADERID is the table name and it is a static table and most importantly it is the master table. A project can have as many static tables as desired, but there can only be one master table. In the fields/variables section, each field is assigned a data type, text or numeric (with size). As many other PC applications, OFM has several precision specific numeric types such as INT2, FLOAT, DOUBLE, etc In the definition file, the fields attributes can be assigned, identified by the keywords such as *pn for Plot Name, *pa for Plot Attribute, *u for Unit, and *mu for Multiplier. These attribute keywords can be searched from the help file.
40
Schlumberger
Project Creation
Project Settings keywords may appear in the definition file. *DateLabel is one of them, denoting the displayed DATE name for the project. For example, a Spanish speaking user can select to use FECHA for date; the user has to insert *DateLabel FECHA at the top of this definition file. Another Project Settings keyword you may see quite often is *Metric, which alerts OFM to treat the project as in Metric unit system. The static master table must be the very first table defined in the primary definition file (there may be many multiple definition files). If the table name, variable name, or even the attribute contains two or more words and has space(s) between them (or non-ASCII characters), they should be enclosed in quotes (for instance, MY WELL) for OFM to treat it properly. Comment lines have to be started with either comment identifiers // or /*. These lines are just descriptive information and will be ignored by OFM at load time. All texts are case-insensitive.
Now take a look at the definition of the monthly production table named MONTHLYPROD. Scroll down the file and locate the line *TABLENAME MONTHLYPROD Monthly. Notice the structure of the definition file.
Schlumberger Public
41
Project Creation
Schlumberger In this case, MONTHLYPROD is the name of a MONTHLY table, which has fields like DAYS (an int4 type), OIL (a float type), and more. 7. Continue to scroll up and down the definition file to study other tables, their fields and attributes. Notice the CHOKE and the RES_PROD tables. The CHOKE table is a DUALKEY SPORADIC table. Therefore, the *DUALKEY keyword is required after the *Tablename line. Likewise, RES_PROD is a GROUP level table. OFM needs to know at which level its data are associated. Thus, the word GROUP is required, followed by the group name. In this case, it is RESERVOIR (a Sort Category).
*KeyLength *KeyLimit *KeyName *Metric *MM *MMYYDD *Month *Null *Quiet *ReadOn
Schlumberger
Project Creation
Static Data
To begin analyzing static data follow the instructions below. 1. Launch any text editor. 2. From the File menu select Open and navigate to the Demo Key Data.XY file located in the Text Load Files directory.
Schlumberger Public
Study the file (please scroll to the right to see all field data). The variable identifiers exist before the data section, right below the *tablename line. OFM parses data into the corresponding fields, based on the order they appear on that variable identifier's line.
Monthly Data
To begin analyzing monthly data, follow the instructions below. 1. From the open text editor select Open. 2. Navigate to the Demo Monthly Prod Data.prd file.
43
Project Creation
Schlumberger Notice the *KeyName line. This tells OFM which entity the next data section will be loaded into (until the next instance of *KeyName). 3. Scroll down to see the rest of the file.
Daily Data
To begin analyzing daily data follow the instructions below. 1. From the open text editor select Open. 2. Navigate to the Demo Daily Prod.dly file and view the data.
Schlumberger Public
Hourly Data
To begin analyzing hourly data follow the instructions below. 1. Export the Hourly data to notepad. 2. Select Database > Export > Selected Text Load File(s) > Table Data. The Table to Export window displays.
44
Schlumberger 3. Select HourlyProd and click OK. The Save As dialog displays. 4. Navigate to the desired save location and click Save. 5. Open the HourlyProd.hly file and view the data.
Project Creation
Sporadic Data
1. From the open text editor select Open. 2. Navigate to the Demo Sporadic Test Data.tst file and view the data.
Schlumberger Public
45
Project Creation
Schlumberger The Sort Category table is a non-defined table. The table definition is specified at the beginning of the file, between the *Define and the *End_Define keywords.
In OFM 2007 (as well as in any versions after 2002), it is not mandatory to physically have a Sort Category table in the OFM project. Any field, preferably a text field, from a static table can be used as a category. Refer to the Editing Sort Categories section for additional information. There are additional text load files provided with the Demo project. With the help of the instructor, you are encouraged to become familiar with those files, especially the typical format of each file/table.
Schlumberger Public
Exercise 8
In this section, you will learn to create a new project with text files provided in the Demo Text \Load Files directory. 1. Start OFM.
46
Schlumberger 2. Select File > New Workspace. The New OFM Workspace window displays.
Project Creation
3. Click the browse button to the right of the Workspace File field. The New OFM Workspace window displays.
Schlumberger Public
4. Navigate to the desired location you want to store your workspace file. 5. Enter the desired workspace name.
47
Project Creation
Schlumberger 6. Select Create it from the data source specified below and browse to the location of the file (*.OFM).
7. Click OK. The OFM Data Loader window displays. 8. Locate the \\\Text Load Files directory.
Schlumberger Public
48
Schlumberger 9. Add the following files to the Files to Load field, in this order, by either double-clicking the file, or highlight and click Add.
Project Creation
Demo Definitions File.def Demo Key Data.xy Demo Monthly Prod Data.prd Demo Daily Prod Data.dly Demo Sporadic Test Data.tst Demo Calculated Variables Data.par Demo Deviation Data.dev Demo Basemap Anno Data.ano Demo Lease Info Data.xrf Demo Pressure Lookup Data.lku Demo DualKey Choke Data.dat Demo Monthly Loadby Reservoir Production Data.prd
When a file is added to the Files to Load list, OFM recognizes the extension and reflects the correct types in the Data Types list.
Schlumberger Public
If files loaded do not follow the OFM naming convention, associate the appropriate data types for the files. Otherwise, the result may be incorrect.
OilField Manager 2007 Fundamentals 49
Project Creation
Schlumberger 10. Leave all other choices unchanged and click Load to display the basemap.
NOTE: If errors are encountered during loading, OFM displays a red error icon on the status bar (i.e., bottom right corner). Click on it, and the error(s) display. Use the right-mouse menu to select and copy the error messages to a text editor to view/save.
Schlumberger Public
Exercise 9
One definition file One key data file One monthly production file One daily production file for a simple four-well project
There are two types of batch data loading in OFM. One is used for loading multiple files to create a project, the other loading multiple files to create multiple projects. The former batch file should have the *.bdl (e.g., Batch Data Loading) extension, and the latter should have the *.bpf (e.g., Batch Project File). This exercise demonstrates how to use the first feature. 1. Open the *.bdl (for example, Batch Data Load File.bdl) in a text editor. 2. If needed, edit to verify the path/directory of the text files is correct. In this case, it would be \\\\Text Load File\ and then the full file. 3. Verify that the definition and key data files are the first two files in the list.
50
Schlumberger 4. Repeat steps 1- 7 of the Creating Project from ASCII Text Files exercise. 5. Locate the Batch Data Load File.bdl file and click Add. OFM reads the file. 6. Place the correct specified files into the Files to Load list (in the specified order). 7. Click Load to load the files as you did in the previous exercise. 8. The project keyword line is followed by those lines (data files) seen in a *.bdl file. A different project is identified by a new *project line, then its own data files. To execute this batch loading procedure, from the File menu with no workspace opened, select Batch Load and the desired file to load. 9. Verify the path and file names are correct to guarantee correct loading of data. Do not forget to close the workspace for the next exercise!
Project Creation
NOTE: The format of the *.bpf is similar to the format of the *.bdl file, except for each project, there is a line specifying the project name and directory. For example, a project named DemoData in the D:\Temp directory is specified as: *Project D:\Temp\DemoData.mdb .
51
Project Creation
Schlumberger 3. Click OK. The PI/Dwights DMP2 Production File Loader displays.
4. Navigate to the location of the \\\Sample Databases\PI Dwights Sample Files\ directory and select a file from the list of available files (i.e., wcr_dmp2.dp2). 5. Click Open.
Schlumberger Public
6. Select the Prod ID (Entity ID) (40 characters) option. 7. Click Next.
52
Project Creation
Schlumberger Public
8. Select the wells you want to load into the OFM project. You can choose to load all wells to the database and click Next.
NOTE: If you want to create a Xref (cross-reference) table at this time, you can do so. Click the Create X-ref button and specify the file name in the next dialog.
NOTE: It is recommended that you do not make changes (unless you know exactly the data) to guarantee the database integrity. In this step, you can specify the fields to be used as Sort Categories.
53
Project Creation
Schlumberger 9. Select the displayed fields to view their descriptions. Click Next. A dialog displays enabling you to select which well test items to include.
Schlumberger Public
54
Schlumberger The next dialog displayed enables you to select which monthly production data items to include.
Project Creation
Schlumberger Public
11. Make the selection and click Finish. The basemap pictured below has been slightly modified. With some modifications, your basemap should resemble this one.
- 1 52 .0 6 7.5 OIL GA S - 1 44 .0 - 1 36 .0 - 12 8.0 - 12 0.0 - 11 2.0 67 .5
6 0.0
60 .0
5 2.5
52 .5
4 5.0
45 .0
3 7.5
37 .5
30 .0 - 11 2.0
55
Project Creation
Schlumberger
If an Access database has tables that are compliant to the OFM database model, OFM can open it and generate a *.OFM workspace file so that OFM can utilize the data in the tables. If you open an Access database that does not comply with the OFM database model, OFM will attempt to open the database but may not be able to generate a *.OFM workspace from the data. In this lesson we will create an OFM workspace from an existing Access database. For training purposes, a simplified version of the Demo database will be used. Your generic Access database may resemble the image below.
Schlumberger Public
1. Start OFM. 2. From the File menu, select New Workspace. The New Workspace window displays.
56
Schlumberger 3. Click the browse button to the right of the Workspace File text box and select the directory where you want your workspace file to be located. Enter a workspace name, i.e., demo_native, and click OK.
Project Creation
4. Click on browse button to the right of the Database File text box. The Select Access Database dialog displays. 5. Locate the directory where your original (generic) Access database is located. Select the desired *.mdb file.
Schlumberger Public
57
Project Creation
Schlumberger 6. Click OK. The Select Access Database dialog closes and you are returned to the New OFM Workspace dialog.
7. Click OK. A message dialog displays prompting you to open a new OFM project. Select Yes to confirm that you want to make this Access database an OFM project.
Schlumberger Public
58
Project Creation
NOTE: If your project has a composite key, you can specify the key by appropriate concatenation of the keys, with appropriate delimiter(s). Up to three keys can be combined to create the composite key field (denoted by Field1, Field2, and Field3 in the Table Key(s) group box). Also, you may have to customize a few things (map association, map properties, etc) to properly display the basemap as desired.
At this time, only the HeaderID table has been associated to the OFM project. The next step is to associate other Access tables to the OFM project. This is done from the Schema Tables window.
59
Project Creation
Schlumberger 2. Select Database > Schema Tables. The Edit Schema Tables window displays, with all the tables available for OFM use.
3. First map a STATIC table to the project. Use the vertical scroll bar to navigate through the Available Tables list and select SortCategory (by checking the box in front of the table name). The following message dialog displays, prompting you to confirm the addition of the SortCategory to the project. Click Yes.
Schlumberger Public
60
Project Creation
4. Locate the OFM Definition section of the window. Select Static from the Table Type list field. OFM prompts you to confirm if you want to associate the UNIQUEID in the SortCategory table to the UNIQUEID in the HEADERID table. Click Yes.
Schlumberger Public
61
Project Creation
Schlumberger 5. Locate the OFM Representation section of the Edit Schema window and select the Demo2007 node.
NOTE: You can view an OFM database as if it has three hierarchical levels project, table, and field levels (from highest to lowest). You should only add/remove table(s) from the project level and add/remove field(s) from the table level.
6. Select the MONTHLYPROD from the list of Available Tables. The following message dialog displays, prompting you to confirm the addition of the MonthlyProd to the project. Click Yes.
Schlumberger Public
62
Project Creation
7. Locate the OFM Definition section of the dialog. Since this is a monthly frequency table, select Monthly from the Table Type list field. OFM reads the table structure and the following dialog displays. Click Yes.
Schlumberger Public
63
Project Creation
Schlumberger 8. Select the Fields tab to view the field information. You can unassociate the field(s) from here. You can also add more field(s) to this table.
64
Schlumberger 10. Click the Demo2007 node from the left pane again. When the list of available tables displays, select DAILYPROD. The following dialog displays, prompting you to confirm the addition of the DAILYPROD table to the project. Click Yes.
Project Creation
Schlumberger Public
11. Locate the OFM Definition section of the dialog. Since this is a daily frequency table, select Daily from the Table Type list field. OFM reads the table structure and the following dialog displays. Click Yes.
65
Project Creation
Schlumberger 12. OFM suggests mapping UNIQUEID in the Dailyprod table to UNIQUEID in the HEADERID table and Date to Date. Click Yes. You are returned to the Edit Schema window.
13. Locate the OFM Representation section of the Edit Schema dialog and select the Demo2007 node. Then select TEST from the list of Available Tables.
Schlumberger Public
66
Schlumberger 14. The following dialog displays prompting you to confirm the addition of the TEST table to the project. Click Yes.
Project Creation
Schlumberger Public
15. Locate the OFM Definition section of the dialog. Select Sporadic from the Table Type list field.
67
Project Creation
Schlumberger 16. OFM suggests mapping UNIQUEID to UNIQUEID. Click Yes. You are returned to the Edit Schema window.
17. Since the entity key of the TEST table (UniqueID) matches the project master (primary) key, the Key Type should be set at Completion (please refer to Module 1 for OFM Database discussion), similar to what you have seen for Static, Monthly, and Daily tables. Make sure the secondary sporadic key in this TEST table is set at DATE. 18. Select the Demo2007 node again. Check CHOKE from the list of Available Tables. The following dialog displays, prompting you to confirm the addition of the CHOKE table to the project. Click Yes.
Schlumberger Public
68
Project Creation
19. Since this table contains intra-day information, select Sporadic DualKey from the Table Type list field.
Schlumberger Public
20. OFM suggests mapping UNIQUEID to UNIQUEID. Click Yes. You are returned to the Edit Schema dialog.
21. Locate the Secondary Sporadic Key(s) section of the Edit Schema dialog. Make sure the two secondary sporadic keys are DATE and INDEX (in that order).
69
Project Creation
Schlumberger 22. Select the Demo2007 node again. Check VALUE_DATA from the list of Available Tables. The following dialog displays, prompting you to confirm the addition of the VALUE_DATA table to the project. Click Yes.
Schlumberger Public
23. Locate the OFM Definition section of the dialog and select Lookup from the Table Type list field. Click Yes.
70
Project Creation
24. Locate the Secondary Lookup Key section of the dialog. Verify that the Key is set to PRESSURE. 25. Use the vertical scroll bar to scroll to the top of the OFM Representation section of the Edit Schema dialog. Select the Demo2007 node. 26. Locate the Available Tables section of the dialog and select LEASE_DATA. Click Yes.
Schlumberger Public
71
Project Creation
27. Locate the OFM Definition section of the dialog and select Xref from the Table Type list field.
Schlumberger Public
28. Locate the Cross Reference Key section of the dialog and verify that the Key is set to LEASE. 29. Click OK to save all the changes to the database.
72
Project Creation
392000
392000
390000
390000
NOTE: To display the well type legend on the basemap, go to Edit > Map > Association to specify the well type field (i.e., SortCategory.WellType) in the Well Type table field. This will gives OFM the ability to create a well type legend; to display the legend it has to be turned on in the Properties pane.
388000
388000
386000
386000
384000 1680000
In this exercise you will map in a monthly frequency table that has a RESERVOIR key. 1. From the Database menu, select Schema Tables. The Edit Schema Tables window displays.
2. Select the Demo2007 node. 3. Select RES_PROD from the Available Tables section of the Edit Schema Tables window.
73
Project Creation
Schlumberger 4. A confirmation dialog displays, prompting you to confirm including the RES_PROD table to the project.
Schlumberger Public
6. Locate the OFM Definition section of the dialog. Select Monthly from the Table Type list field.
NOTE: OFM cannot find the correct key in this table to match the (HeaderID) UniqueID key, select No (even though the Date key is correctly matched). OFM reminds you to manually associate two keys for this table (from the bottom, above the OK and Cancel buttons.
A confirmation dialog displays prompting you to accept the OFM key associations.
74
Schlumberger 7. Click Yes. You are returned to the Edit Schema window.
Project Creation
8. Locate the OFM Definition section of the dialog. Select Foreign from the Key Type list field. A confirmation dialog displays prompting you to accept the OFM key associations. Click No.
Schlumberger Public
75
Project Creation
Schlumberger 9. Locate the OFM Definition section of the dialog. Click the drop-down arrow to the right of the Foreign list field.
WARNING: You MUST uncheck the HeaderID alias field before checking SortCategory.RESERVOIR .
10. Select the HeaderID.Alias checkbox to remove the check. 11. Scroll down the list and select the SortCategory.RESERVOIR checkbox. 12. A confirmation dialog displays prompting you to accept the OFM key associations. Click Yes to accept the OFM key associations.
Schlumberger Public
You are returned to the Edit Schema window. 13. Click OK. Your project has successfully been created.
Exercise 17
TIP: FINANCIAL is a Lookup table, MONTHLYGASINJ is a Monthly table, and Sand is a Static table.
1. Associate the rest of the available tables to the OFM project. 2. Do not forget to close the workspace for the next exercise!
76
Schlumberger
Project Creation
Schlumberger Public
77
Project Creation
Schlumberger 3. Click the browse button to the right of the Workspace File and navigate to the directory where you want your workspace file to be located.
4. Enter a workspace name, i.e., link_Access, and click OK. 5. Leave the Database File name unchanged. Select the Design it interactively option.
Schlumberger Public
78
Project Creation
7. Locate the OFM Representation section of the dialog, select the HeaderID table, and right-click. A shortcut menu displays. 8. Select Delete from the menu options.
Schlumberger Public
79
Project Creation
9. Click the Add Link Tables button. The Open dialog displays.
Schlumberger Public
10. Locate the directory where your Microsoft Access source database is located. Select the database.
80
Schlumberger 11. Make sure the Files of type box shows Microsoft Access (*.mdb). Click Open.
Project Creation
The first table to link to the OFM project MUST BE the master table. In the source Access database, that table is the HEADERID.
Schlumberger Public
12. Select the HEADERID table from the list and click OK.
13. OFM recognizes this table structure and suggests the key association. Click Yes to include HEARDERID in the project.
81
Project Creation
Schlumberger 14. Since the mapping suggestion is correct, you do not have to take any action. Select the Linked_Access node from the left pane.
16. Select the desired directory and database. Make sure Microsoft Access is selected as in step 5. Click Open. 17. From the Select Table(s) to Link dialog, click Select All. Notice that the HEADERID table is available for linking. You do not need to link the HEADERID table again. Therefore, while holding the Control key (Ctrl), click on the HEADERID table to unselect it.
Schlumberger Public
82
Schlumberger 18. Click OK. The selected tables have been made available to the OFM project.
Project Creation
Lesson 6
Schlumberger Public
Microsoft Excel has been used widely in the Oil and Gas industry to temporarily store data (before loading to long-term data management applications and/or analytical applications), as it is very easy to use. Excel is free formatted, which is error-prone for a relational database based application like OFM. OFM supports linking to Excel to get the data, via the Linked Tables method. However, to ensure the link between OFM and Excel works correctly, there are a few rules to consider: The Worksheet Name will be used as the Table Name. The first row on the worksheet is reserved for Field Names. These names should contain no spaces. Data must begin in Row2, and every column with numeric data MUST contain a numeric value. Missing numeric data in Row 2 should be represented by the default null OFM value (-99999). Each worksheet can only store data for one OFM table. No merging of worksheets allowed. Data on the worksheet must be continuous. No empty row(s) should exist in between data sections. No extra formats on the data columns (i.e., comments, merged cells, etc). Data in the same column must be of identical data type (i.e., number, text, date/time) and should be of the same format. No embedded graphs allowed on the linked worksheet.
Project Creation
Schlumberger
Schlumberger Public
84
Schlumberger
Project Creation
Schlumberger Public
To create an OFM project from an external Excel spreadsheet: 1. Launch OFM. 2. Create a new workspace. Locate the directory where you want to put the workspace file and the database file. 3. Select Design it interactively. Click OK.
85
Project Creation
4. Locate the OFM Representation section of the dialog. Select the HeaderID table and right-click. A shortcut menu displays. Select Delete. 5. Click the Add Link Tables button. The Open dialog displays. 6. Select the directory where the source Excel file is located. Select the desired file. From the Files of type drop-down list, select Microsoft Excel (*.xls).
Schlumberger Public
86
Project Creation
8. Click Select All, then OK. The Edit Schema Tables dialog displays.
Schlumberger Public
87
Project Creation
Schlumberger
Once you are connected to the external data source, the procedure to map/associate the external tables to the OFM project is identical and independent of the data source type.
TIP: Right mouse click on the table (on the left pane) and select Rename from the menu, the program gives you access to changing table names.
Schlumberger Public
You can rename a table in OFM, once the table has been mapped. Many external tables have long names, which you may consider changing. The external table names are still unaltered; only the OFM table names change. The MASTER table can only be renamed when it has just been mapped to the project. After that, it cannot be changed. The other table names can be changed at any time unless the tables (and their children fields) are referenced by other tables/fields. It has been left as an exercise to associate all other Excel tables to the project now that they have already been made available for use.
1. Associate the other tables to the project. Refer to the previous two sessions if detailed instructions are needed, or ask your instructor for assistance. 2. Do not forget to close the workspace for the next exercise!
88
Schlumberger
Project Creation
Schlumberger Public
89
Project Creation
Schlumberger 4. Select the HeaderID table and delete it. Click the Add Link Tables button. The Open window displays.
5. From the Files of type drop-down list, select ODBC Database(). The Select Data Source appears.
TIP: It recommended that you create a Machine Data Source DSN.
Schlumberger Public
90
Schlumberger 6. Select the Machine Data Source tab and click New. The Create New Data Source dialog displays.
Project Creation
7. Select the System Data Source option and click Next. 8. Since the data source is Microsoft SQL Server, select SQL Server from the list of available drivers.
Schlumberger Public
9. Click Finish. The Create a New Data Source to SQL Server window displays.
91
Project Creation
Schlumberger 10. In the Name field specify the Data Source Name. In the Description field, describe the data source. From the Server list field, select the host server name of SQL Server that you can connect to.
11. Click Next. The wizard prompts you to enter the login information.
Schlumberger Public
NOTE: You can connect to the SQL Server database using the (Windows NT) network login ID or specifying server authentication login name and password. For more information, please consult with your instructor.
92
Schlumberger 12. Click Next. Select the default database where your source database is located and provide other information as needed.
Project Creation
93
Project Creation
Schlumberger 14. Click Finish. A window displays a summary of the setup information. To test the connection, click Test Data Source.
Schlumberger Public
94
Schlumberger 16. Click OK you are returned to the Select Data Source window.
Project Creation
Schlumberger Public
17. Select the Machine Data Source tabbed page. 18. Highlight the desired DSN and click OK. This step concludes the DSN setup. The Tables window displays.
TIP: In this lesson we are only connecting to a small set of tables; therefore, we will accept the default settings. If you are linking to a rather large data source (i.e. Oracle database or SQL Server database), you would want to narrow the list of tables by filtering based on Qualifier and/or Owner.
95
Project Creation
Schlumberger 19. Click OK to continue. The Select Source Tables window displays.
20. Select the appropriate tables to link to the OFM project (e.g., HeaderID, Monthlyprod). Once the tables are made available to OFM (in the list of Available Tables), the steps to associate those tables to the project are straightforward, as in the previous exercises.
Schlumberger Public
Review Questions
What methods can you use to create an OFM project? Describe the hierarchy of an OFM database from highest to lowest. What is the Linked Tables Method and why do you need to use it?
Summary
In this module, you: Analyzed table types Populated the project with ASCII data files Lined the project with data from external ODBC sources
In the next module, you will learn how to access core functionality in the OFM environment and how to use project panes.
96
Schlumberger
Project Creation
NOTES
Schlumberger Public
97
Project Creation
Schlumberger
NOTES
Schlumberger Public
98
Schlumberger
Project Administration
Module 3
Project Administration
The Graphical User Interface (GUI) was completely redesigned in 2005. The interface improvements reduced the number of menu selections and provide a more intuitive experience for the end user. This redesign of the GUI has enabled users to quickly access and leverage the core functionality and features within the OFM environment. Accessibility through much of the functionality OFM provides is achieved through the use of project panes.
Learning Objectives
In this module, you will successfully learn how to perform the following procedures within this workflow: Changing the layout Working with panes Edit completions, wellbores, patterns Understanding units, multipliers, PVT data Editing table schema Editing categories
Schlumberger Public
Lesson 7
The Layout menu command enables you to organize the display with predefined layouts. Select View > Panes > Layout to access each of the predefined layouts.
Opening Panes
Panes can be opened from the View menu. Opened panes have a checkmark displayed to the left of them in the view menu indicating that the pane is opened.
99
Project Administration
Schlumberger
Hiding/Showing Panes
Panes that are open but not displayed in the main OFM window are displayed as a tab on an open pane. The horizontal pin located in the upper-right corner of the pane indicates that the pane is not docked. Moving the mouse away from the pane, results in the pane being hidden.
Schlumberger Public
Floating/Docking Panes
Select the pane you want to move, drag it to the desired location, and release the mouse. The image below shows the results of a floating pane.
NOTE: To dock the pane, double-click in the header of the pane. The pane is restored to its original location.
Positioning Panes
Panes can be moved to any location within the OFM main window. To reposition a pane, select the pane and drag it to the desired location. An outline of the pane is displayed showing where the pane will be relocated. Panes can be repositioned within another pane, displayed as a tabbed page of another pane, or as a docked pane within the OFM main window.
100
Schlumberger
Project Administration
Schlumberger Public
Project Administration
Schlumberger Completion displays the Delete/Rename dialog. This dialog enables you to remove or rename UNIQUEIDs (completion names) from the database.
Wellbore displays the Delete/Rename dialog. This dialog enables you to delete or rename Wellbores from the database.
Schlumberger Public
Patterns patterns are groups of wells. The portion that each individual well contributes to the group varies with time and is calculated by applying a factor to the individual well data. Selecting the Patterns menu command displays the Edit Patterns dialog. This dialog contains a list of pattern data to select one or more patterns to display on the base map.
102
Schlumberger
Project Administration
Schlumberger Public
3. Enter a value in the Metric, English, and Conversion fields, or modify the values currently displayed. 4. Click OK.
103
Project Administration
Schlumberger
Multipliers
The Edit OFM Multipliers dialog enables you to create, edit, or delete unit multipliers for variables. The OFM multiplier functionality is useful for converting existing data, creating conversion factors, or defining multipliers that are not included in the OFM database. 1. Select Database > Multipliers. The Edit OFM Multipliers dialog displays.
Schlumberger Public
3. Enter a value in the Field, Metric, Scientific, and Conversion fields, or modify the values currently displayed. 4. Click OK.
PVT Data
Edit PVT Data from the PVT Entity Name window. The PVT Entity Name window contains a Select One section, which lists entities such as wells, reservoirs, fields or surveys, for example. PVT data for the selected entity or item can be edited and stored in a database that is automatically accessed and used when calculations that require PVT data for the entity are performed.
104
Schlumberger The PVT Entity Name window also enables you to add an entity, delete an entity, or rename an entity in the Select One list. Predefined PVT table data for one entity can by copied to another (New) entity.
Project Administration
Schlumberger Public
105
Project Administration
Schlumberger 3. Select Database > Schema Tables. The Edit Schema Tables dialog displays.
NOTE: The level of the tree selected in the OFM Representation section of the dialog determines what information will be displayed on the right side of the Edit Schema Tables dialog. If the top level of the project is selected, only the Tables tabbed page is displayed. You must select a table to display the Table and Fields tabs for that table.
To remove/detach an OFM table from its source (Access) table, clear the check box in front of the source table. For example, clearing the MONTHLYGASINJ check box detaches the table from the OFM project without deleting it from the Access database. 4. To add an OFM table, locate the OFM Representation section of the window, select the Demo2007 folder and rightclick. A shortcut menu displays. 5. Select Add.
Schlumberger Public
106
Schlumberger The Edit Schema Table dialog displays a NewItem table in the OFM Representation section of the window.
Project Administration
6. Replace the default table name NewItem with NewMonthly. OFM assumes that the table is of Monthly type and creates the default fields UniqueID and Date.
Schlumberger Public
107
Project Administration
Schlumberger 8. Enter NewOil in the Add New Field text box and click Add. The new variable/field NewOil is added into the table. 9. Repeat the previous step, this time adding NewGas and NewWater variables.
NOTE: The newly added fields are displayed in the Available Fields section of the dialog. Once the fields are created, clearing the checkbox in front of the field detaches the field from the project; it does not delete it from the database.
Next you will assign attributes to the NewOil field. 10. Select NewOil. The properties for this field are displayed on the right side of the Edit Schema window.
Schlumberger Public
108
Schlumberger 11. Locate the Variable section of the Field tabbed page. Select Single from the Type list field.
Project Administration
12. Select the Units tab. Locate the Units section of the dialog. Select gal = => m3 from the drop-down list.
Schlumberger Public
109
Project Administration
Schlumberger 13. Select the Math tab and accept the defaults.
Schlumberger Public
110
Schlumberger 15. Locate the Format section. Change the value in the Decimal field to 0. Leave all other values unchanged.
Project Administration
Schlumberger Public
17. Locate the Curve Name field and change the name to (New) Monthly Oil Production.
111
Project Administration
Schlumberger 18. Locate the Curve Attributes section and make the changes listed below.
Line Color - Green Line Width - 4 Line Type - Solid Point Type - None Point Size - (not applicable with Point Type of None) Fill Interior - None Fill Style - Horizontal
Schlumberger Public
19. Click OK to save your changes and exit the Edit Schema window.
Editing Categories
All text fields in all static tables can be used as categories. In the OFM Demo2007 database only some of the workspace categories are active. To edit (activate or de-activate) the categories follow the instructions outlined below.
112
Schlumberger 1. To activate or de-activate the categories, select Database > Categories. The Select Categories window displays.
Project Administration
2. Check the desired boxes in the Category Name column to activate them, or clear the checkbox to deactivate them. 3. Select the Show All Fields (text and numeric) checkbox.
NOTE: Use the Show all Fields option with caution as it can cause round-off errors for non-text fields.
Schlumberger Public
4. Select the desired checkboxes in the Category Name column to activate the categories. 5. Click OK.
113
Project Administration
Schlumberger
Review Questions
How do panes help you control the display in OFM? When you use the OFM Database menu commands, what is the impact on the OFM database? Describe the structure of an OFM database.
Summary
In this module, you: Changed the default layout Familiarized yourself with opening, hiding, floating, docking and positioning panes Edited completions, wellbores, and patterns Reviewed units, mulitipliers, and PVT data Edited the schema table Edited categories
Schlumberger Public
In the next module, you will learn how to customize the basemap.
114
Schlumberger
Project Administration
NOTES
Schlumberger Public
115
Project Administration
Schlumberger
NOTES
Schlumberger Public
116
Schlumberger
Basemap Customization
Module 4
Basemap Customization
The basemap is the first screen you see when opening a project. It is probably the last window you see before closing the project. Managing a distinguishable Basemap helps reduce confusion and mistakes.
Prerequisites
If you do not already have your OFM application open, please open it now. Then, load the Demo2007 project. You will be using this project for all exercises in this module.
Learning Objectives
In this module, you will successfully learn how to perform the following procedures within this workflow: Edit Map Association Edit Map Display Modify Map Properties Zoom/Unzoom Apply Map Annotations and Deviations Creating/Editing Map Associations (interactively)
Schlumberger Public
Lesson 8
The basemap will not display correctly until the map associations are set up. OFM provides suggestions but may not activate the desired associations. In this section, manipulation of the map associations is discussed.
117
Basemap Customization
TIP: Coordinates and Depths information must be located in the master table. Well Type Expression can be associated to any project variables (including input variables, calculated fields, and calculated variables which will be addressed more extensively in Reporting and Creating Calculated Variables. Well Type Expression, upon association, will lead to the window in step 2. You will need to make the correct choice as in step 3. Other map fields are likely text fields and can be mapped to any text fields in any static tables (same as Well Type Table fields). If you know that your X and Y-coordinates are in LatLong, click Coordinates located at the bottom left corner of the dialog. Then check the Convert my LatLong coordinates to UTM box, select the reference system, and click OK. OFM automatically does the job for you.
Schlumberger Public
Well Type - Table is the most common association for well display, color and attributes. You can associate/map this specification to any of the text fields in any of the static tables. 2. From the Well Type Table select Sc.Lease from the list and click OK.
3. Select Create from data option because symbols for the Lease fields are not predefined in the WellType.def file (in the \\...\symbols directory).
118
Schlumberger 4. Click OK. The remaining associations should be self-explanatory. If you know which fields in your database correspond to the OFM map fields, associate them. In this project, it is likely that OFM would suggest the correct fields so you do not have to make any changes. 5. When all map associations are complete, click OK. The basemap displays with the color and attribute-coded wells.
Basemap Customization
Schlumberger Public
3. Select Edit > Map >Association. The Map Association Data window displays. 4. From the Well Type Table list field select Sc.WellType and click OK. 5. The Well Symbol File dialog displays, select Default. 6. Click OK the Well Symbol File dialog closes. The basemap displays with the well type as the legend display criteria. Move the legend, if needed.
Lesson 9
Some of the basemap attributes are modified from the Edit > Map menu command. A submenu displays enabling you to modify the map association data, symbols, map annotations, headers, and scale of the basemap currently displayed.
OilField Manager 2007 Fundamentals 119
Basemap Customization
Schlumberger
Schlumberger Public
2. Save the current symbols used to a file for future use by clicking Save File. The two checkboxes at the base of the Well Symbols dialog are used to enhance performance when dealing with a potentially large number of wells. 3. Click OK and observe the changes made to the well symbols.
120
Schlumberger 4. Change the symbol size back to 1, so the wells will not be on top of each other.
Basemap Customization
In this exercise you will display the well names on the basemap. 1. Locate the Well Name Properties section of the Properties pane.
2. Click in the field to the right of Well Name a list of available options are displayed. Select Well Name.
121
Basemap Customization
3. The well names are too long to be distinguished on the basemap. Return to the Properties pane and select Alias Name from the Well Name list field.
Schlumberger Public
122
Schlumberger
Basemap Customization
TIP: Change all the Grid Limits and Control settings by entering the desired values in the corresponding fields. The Gridline Attributes can be changed by selecting the desired options from the Gridline Attributes section of the Properties pane. Coordinate values are displayed when the Numbers attribute is Yes. Coordinate values are displayed with the specified decimals in the Decimal Places field located in the Numbers section of the Properties pane. To modify this value, the Grid Control property must be set to Manual. Return the default OFM control values by setting the Grid Control property to Auto.
Schlumberger Public
123
Basemap Customization
Schlumberger
Schlumberger Public
2. Select the checkbox to the left of the Demo Database header and click Delete. This action removes the heading currently displayed on the map.
124
Schlumberger 3. Select Edit > Map > Headers. The Headers window displays.
Basemap Customization
4. Click Add. A blank row is inserted in the window. 5. Type OilField Manager Demo Database. You MUST use quotation marks to enclose your text. 6. Click Add. Another blank row is inserted in the window. 7. Click Assist. The Edit Header window displays.
Schlumberger Public
125
Basemap Customization
A hint is displayed at the bottom of the window. This information will assist you with the format you should use when entering information in the Header field. 10. Select DayName and double-click.
Schlumberger Public
11. Enter the desired year, month and day in the following format YYYYMMDD in front of the comma.
126
Schlumberger 12. Following the comma type a numeric value of zero or one. If it is zero the abbreviated day name will display, if it is any other value the full day name will display.
Basemap Customization
Schlumberger Public
13. Click OK. The Edit Header window closes, and you are returned to the Header window.
127
Basemap Customization
15. Specify the font attributes. Click OK to close the Font window. 16. Click OK to close to Headers window.
Schlumberger Public
TIP: The legend can be moved by dragging and dropping to any location on the basemap. Multiple headers can be selected concurrently by selecting them after one another. Then they can be moved simultaneously. The headers have their own menu commands. Select the header and right-click to access this menu.
128
Schlumberger
Basemap Customization
NOTE: If your project does not have annotations loaded, the OFM Data Loader displays. (Refer to the Data Loading section for information.).
Schlumberger Public
129
Basemap Customization
Schlumberger The following steps are optional and are only necessary if your project does not have annotations loaded. If there are files listed in the Files section of the window go to step 5. 2. Click Add. The OFM Data Loader window displays.
Schlumberger Public
3. Navigate to the annotation files from the \\...\Sample Databases\Demo Database\Text Load Files directory. 4. Select the files and click Add. Then click Load. The OFM Data Loader dialog closes, and you are returned to the Map Annotations dialog.
130
Schlumberger 5. Select each file to make it active or inactive. Active annotations are displayed if the Display active map annotations checkbox is selected. Inactive annotations are already loaded into the project but not shown on the basemap. Note the Activate this annotation option is selected.
Basemap Customization
Schlumberger Public
6. Check Cache annotations for performance (recommended). Click OK. The message dialog pictured below displays.
7. Click OK to compress and save each of the annotations to the OFM project. 8. Highlight the first annotation file listed in the Files section of the Map Annotations window.
131
Basemap Customization
Schlumberger 9. Locate the Preview section and click Current. The select annotation displays in a preview window.
NOTE: Click Remove if you want to unload the selected annotation file. Click Add to load more annotation files into the project.
Schlumberger Public
10. Click All. All annotations are displayed in the preview window.
132
Schlumberger 11. Click OK to close the Map Annotations window. The annotations are displayed on the basemap.
Basemap Customization
Schlumberger Public
133
Basemap Customization
Schlumberger
Schlumberger Public
2. In the Draw Well Location section of the window select At Surface and in the Draw Survey section of the window select Completely.
134
Basemap Customization
TIP: The Draw Well Location options determine the location of the well symbol on the survey (deviation display). The Draw Survey options determine how the deviations are drawn.
4. (Optional) Change the specifications for deviation display and observe the changes on the basemap.
Schlumberger Public
A specific part of the basemap can be selected and viewed in detail using this window. 2. To zoom, click the + or use the slider at the base of the window.
135
Basemap Customization
Schlumberger
Schlumberger Public
136
Schlumberger
Basemap Customization
Each of the windows can then be accessed by clicking on the respective tab at the top of the main window.
Schlumberger Public
2. Select the desired drawing tool buttons to activate the draw mode. 3. Start drawing the annotations. 4. When done, click the Start/Stop button (last button, with a tool tip when your cursor is there) or click the right-mouse button and select Stop. (You can edit the annotations attributes later.)
137
Basemap Customization
Schlumberger
2. Navigate to the location of the Demo Basemap Anno Data.ano file (in \Sample Databases\Demo Database\Text Load Files\ directory).
Schlumberger Public
138
Basemap Customization
Schlumberger Public
As you open an annotation file, the default mode is Create, so you can add more annotations to the current display. 5. Right-click on the basemap. A shortcut menu displays.
139
Basemap Customization
140
Schlumberger 9. Click OK. The Map Annotation Editor window closes, and the changes are applied to the basemap.
Basemap Customization
10. Continue to modify the annotations. You can even move the annotations by changing their coordination. Save the file (overwrite the file name if you want).
NOTE: All the map annotation-editing options can be accessed with the right-mouse click. However, the menus that appear depend on the hierarchical (drill-down) level you are on.
Schlumberger Public
141
Basemap Customization
Schlumberger
Review Questions
Name five attributes you can modify on the basemap display. Which menu option determines how well deviations display? What is the purpose of the Irregular Zoom option? Why is Workbook Mode useful?
Summary
In this module, you: Edited Map Association Data Modified the map display Modified the map properties Familiarized yourself with the zoom/unzoom feature Loaded an Annotation (*.ano) file Familiarized yourself with deviation data Created and edited map associations interactively
Schlumberger Public
In the next module, you will learn about filtering options in OFM.
142
Schlumberger
Basemap Customization
NOTES
Schlumberger Public
143
Basemap Customization
Schlumberger
NOTES
Schlumberger Public
144
Schlumberger
Filtering
Module 5
Filtering
Filtering is a technique used to narrow down the list of entities to a more manageable and workable selection. In reality, most users are only interested in a subset of their working projects. The concept of filtering in OFM has proven to be very useful for all users as good filter criteria can really optimize the time to perform analysis, guarantee correct results, and maximize productivity. The OFM Filter pane is pictured below.
NOTE: One of the most frequently used Filter operations is Clear. To guarantee that your filter criteria are applied to the entire set of wells (entities), clear any previously applied filters (unless you want to perform nested filters).
Schlumberger Public
Learning Objectives
In this module, you will successfully learn how to perform the following filtering procedures: Filter by Completion Filter by Table Data Filter by Category Filter by Match Filter by Well List Filter Using Map Area Filter by (OFM) Query Using Step Functionality Project Filtering Other Filtering Methods
145
Filtering
Schlumberger
Schlumberger Public
In previous OFM releases, only the full Completion name could be displayed in the list for user defined selections. By default OFM now displays both the full completion and alias name in one screen. Additionally, you may change the view from Alias to another category for display in the second column by selection the Second Column Info drop-down list. The CTRL or Shift keys help the user to select multiple wells or entities of interest. Clicking the column headers automatically sorts the well entities.
146
Schlumberger 3. While holding the CTRL key on your keyboard, use the mouse to select the following completions:
Filtering
Schlumberger Public
4. Click OK the Filter by Completions dialog closes and the basemap displays.
147
Filtering
Schlumberger 5. Select Edit > Map > Annotations. The Map Annotations dialog displays.
6. A checkmark displays to the left of the option Display active map annotations. Select the checkbox to clear it and click OK. 7. The basemap does not adjust to display the selected wells (zoom). You can ask OFM to automatically zoom in the selected wells by selecting Tools > Settings. The Settings window displays.
Schlumberger Public
148
Schlumberger 8. Select the Maps tab. 9. Check Auto zoom map around selected wells. Click OK to close the Settings window.
Filtering
10. From the Filter pane click , Group All Selected Items icon. The wells display in magenta indicating that they have been loaded into memory as one entity.
Schlumberger Public
149
Filtering
Schlumberger 11. Locate the Step toolbar at the top of the OFM main window.
Schlumberger Public
12. Click the drop-down arrow and select the first well, Blue_1:He_0. The basemap now only has one well highlighted in magenta, Blue_1.
Schlumberger have any production. Therefore, selecting the wells from the production table is a better solution.
Filtering
Schlumberger Public
. 3. Select MONTHLYPROD table from the list of tables. The basemap returns all wells with production data.
NOTE: The output data at the top of the filter pane shows that 120 wells meet the filter criteria. In other words, 120 wells have data in the MONTHLYPROD table.
151
Filtering
Schlumberger
4. Clear the filter. 5. Select wells that have test data by selecting the TEST table. A list of 21 wells that meet this filter criterion is returned. 6. Select MONTHLYPROD and TEST tables from the list. The filter is applied and only the completions that have records in both the MONTHLYPROD and TEST tables are displayed on the basemap, 20 wells meet the criteria.
Schlumberger Public
Question
What do you think the results mean? Why 20 and not 21? Can you single out the difference (well name)?
152
Schlumberger
Filtering
. 3. Select BERRINGER. The basemap shows 94 wells that belong to the BERRINGER lease. 4. To select wells in either BERRINGER or TRAMMEL, select both checkboxes. The basemap shows 129 wells. Obviously, the TRAMMEL lease has 35 wells (129-94=35). 5. Clear the filter. 6. Expand the LEASE node and select BERRINGER from the list of available leases.
Schlumberger Public
153
Filtering
Schlumberger 7. Expand the RESERVOIR node and select all ADOBE reservoirs.
Schlumberger Public
Question
Select the oil wells that belong to the LITMUS reservoirs. How many wells are there?
154
Schlumberger
Filtering
Schlumberger Public
3. In the Completion Key Match field, type BL*. This option is not case sensitive. 4. Click OK. The Match dialog closes, and you return to the OFM main window. 5. Check Match 1 in the Filter pane.
155
Filtering
Schlumberger The map displays forty wells that satisfy the filter criteria.
Schlumberger Public
7. Select Edit from the shortcut menu. The Match window displays. 8. In the Completion Key Match field, type B* and click OK. 9. OFM allows you to input multiple search criteria. Select Match and right-click. A shortcut menu displays. 10. Select Add from the shortcut menu. The Match window displays. 11. In the Completion Key Match field, type R*.
156
Filtering
NOTE: If you have a list of search criteria (search characters), you may want to save that with the Save option and re-use that list with the Open option.
Schlumberger Public
Exercise 38
Filtering by Query
1. From the Filter pane select OFM Query and right-click. A shortcut menu displays.
157
Filtering
NOTE: If queries were not previously created, you have to create one by clicking Edit.
TIP: Monthlyprod.Oil is an input variable. It is found from the Project Variables list. Click the Project Variables button and select the Monthlyprod.Oil variable from the list. Click Add (or double-click the variable to add it to the above window). All variables in the project can be found and added this way. The keypad can be used to add non-text characters, logical operators, and keywords used in a typical query statement (if you dont want to use the keyboard). The Delete and Clear buttons provide quick editing capability. Keep in mind that in OFM, the AND operator is represented by the & (ampersand) character, the OR operator is represented by the | (vertical bar) character, and the NOT operator is denoted by the ! (Exclamation mark). All the text characters are not case-sensitive.
Schlumberger Public
If you are familiar with query languages such as SQL, this interface mimics the WHERE portion of your query statement. 4. In the text window below, enter Monthlyprod.Oil > 500.
158
Schlumberger 5. Click OK to return to the OFM Query window. The filter query statement appears next to the Edit button.
Filtering
6. Since you want to get the wells that produced more than 500 bbl a month at least one time, enter 1 at the time(s) box. Leaving it at 0 yields the same result, as 0 means default in OFM, and the default occurrence is 1. Click OK. 7. From the Filter pane select the checkbox to the left of the newly created query. The basemap appears with 99 wells.
Schlumberger Public
8. Clear the filter and re-access the OFM Query window. 9. In the OFM Query dialog, enter Monthlyprod.Oil > 500 & Date >= 19900101. In the above statement, with the AND operation, the command told OFM to only apply the filter to monthly oil production records from January 1st, 1990, ignoring all records before that date.
159
Filtering
Schlumberger 10. Click OK. You are returned to the OFM Query window. Enter 3 in the time(s) text field so that at least three instances of the criteria are met. Make sure the Consecutively box is not checked.
11. Click OK to save the query. The OFM Query window closes. 12. Select the checkbox to the left of the newly created query, OFM Query 2.
Schlumberger Public
Thirty-one wells return, meaning each of those 31 wells has produced at least 500 barrels of oil per month more than (or equal to) three times in its producing history since 1990. 13. Select OFM Query2 and right-click. 14. Select Edit. The Create Query window displays. 15. Nest in another condition to check for gas production (i.e., searching for the wells that have high oil and low gas production). Append this line to the end of the previous query statement: & Monthlyprod.Gas < 500000. 16. Run the query again. Only 18 wells return. 17. Select OFM Query2 and right-click. 18. Select Edit. The Create Query window displays.
160
Schlumberger 19. Add in the parentheses to the query statement. Enter (Monthlyprod.Oil > 500) & (Monthlyprod.Gas < 500000) & (Date > = 19900101).
Filtering
Schlumberger Public
20. Now rerun the query. It will return the same result. However, by adding parentheses, the query statement is more readable and manageable. The order of precedence is very important in any type of query language. Parentheses verify that the query is evaluated in the order that the user specifies and helps avoid unnecessary errors. It is recommended that you get into the habit of adding parentheses. 21. Use Filter by Query to find the wells that produce at least 5000 bbl of oil or 2000000 scf of gas for at least 3 consecutive times since 1990. Your query should return 19 wells. 22. Use Filter by Query to find the wells that produce at least 50 bbl of oil for at least 3 consecutive times since 1998. Save the query as Prod_Wells98. Your query should return 18 wells. 23. From the Filter pane, click the Save icon and select To Well List. 24. Save it to your desired directory as Prod_Wells98.txt. You may be using this list for future tasks (e.g., Forecasting). 25. Select the Filter Archive tab located at the base of the Filter pane. Select the Archive node, right-click and select Add. A new node is added.
161
Filtering
NOTE: OFM supports nested filtering (or stage filtering). That means you can apply your current filter on the previously filtered list. This operation cannot involve Clear Filter.
NOTE: You can have all the arguments in a logically combined query statement, but the statement then could be very difficult to maintain, troubleshoot, and understand (not taking into account the limitation of the query statement buffer size).
27. To filter the wells producing more than 2000 bbl of oil, have test information, and belong to the BERRINGER lease. Expand the Category node, then the LEASE node, and check BERRINGER. 28. Expand the Table Data node and select TEST table. 29. Select OFM Query and right click. Select Add from the shortcut menu. The OFM Query window displays. 30. Click Edit. The Create Query window displays. 31. Type Monthlyprod.Oil > 2000. 32. Click OK to save the filter the query. 33. Select the checkbox to the right of the filter. The result of your nested filter is displayed. Do not clear the filter.
Schlumberger Public
Flagged Items Save Well List Save Scatter Set Save Archive
162
Schlumberger
Filtering
163
Filtering
Schlumberger 2. Click the Flag icon, . A flag is displayed near the flagged well on the basemap.
3. Continue to flag any other wells of interest. 4. From the Filter pane, click Filter by Completion, . The Filter by Completion dialog displays. Notice that the Select Flag button is enabled.
Schlumberger Public
5. Click Select Flag to select the components that have been flagged. 6. Click OK. The Filter By Completion dialog closes and only the flagged completions display on the basemap.
164
Schlumberger
Filtering
Well List
Well list stores the information of all the wells that meet the filter criteria in the text file format in the form of Unique IDs. 1. From the Filter pane, click the Save to Well List icon. The Well List dialog displays. 2. Enter the desired name in the File Name field and click Save. 3. To apply the filter from a previously created well list file, select the Well List node, right-click, and select Add.
Schlumberger Public
Scatter Set
Scatter Set contains the well Unique IDs either by category or filter name. Categories can be field name, lease, log data, reservoir, or well type. 1. From the Filter pane, click the Save to Scatter Set icon. The Save As Scatter Set File window displays.
2. Enter the desired name in the Current Filter As list field. 3. Select the Category radio button and select the desired category type.
165
Filtering
Filter Archive
In query, you can save the query setup and/or the query result. In other filter techniques, you can save the result, as the setup is not that important. However, if your filter procedure involves many steps (i.e., nested filter), it would be useful to save the procedure (steps) itself. Filter Archive helps you achieve that goal. 1. After applying the filter, click the drop-down arrow to the right of the save icon and select To Archive.
Schlumberger Public
2. Enter a name in the Filter Archive Name list field and click OK.
166
Schlumberger 3. Select the Archive tabbed page on the Filter pane. The archive is displayed below the Archives node.
Filtering
NOTE: To apply the archived filter criteria, double-click on the archive or right-click on the archive and select Load from the shortcut menu.
Schlumberger Public
167
Filtering
Schlumberger
Step
Another feature that relates to filtering in OFM is Step (a global menu). You can set up OFM entity level from the Step pane. OFM will pre-process data and return information at the set Step level at retrieval time. For example, if you set Step to RESERVOIR, you are dealing with individual reservoir instead of well/completion level. From the drop-down well list, reservoir names will be displayed instead of well names. Clicking on the next or previous button will take you to the next/previous reservoir in the list.
Schlumberger Public
Redirects you to the very first entity in the list Redirects you to the previous entity in the list (at level set in Step > Category). Redirects you to the next entity. Redirects you to the very last entity in the list.
168
Schlumberger
Filtering
3. Select the Project Filters node and right-click. A shortcut menu displays.
169
Filtering
Schlumberger 4. Select Add from the shortcut menu. The Edit Project Filter window displays.
Schlumberger Public
5. In the Where Clause section of the dialog, enter XCOOR>1671000 AND XCOOR < 1676000 AND YCOOR>388000 AND YCOOR < 392000. 6. Click OK. The Edit Project Filter dialog closes.
170
Schlumberger 7. Select the checkbox to the left of the newly created filter Project Filters1.
Filtering
Schlumberger Public
8. Clear the checkmark to the left of the project filter. The basemap shows all 231 wells.
9. Select Project Filter1 and right-click. A shortcut menu displays. 10. Select Edit. The Edit Project Filter window displays. 11. Click Clear located in the Project Filter Table section of the dialog. 12. In the Table list field select HEADERID.
171
Filtering
Schlumberger 13. From the Fields list select CID. 14. From the Operator list select = (equal sign). 15. Click Find Field Values. 16. From the Values list field select Li. 17. Click Add to Where. The clause is added to the Where Clause section of the dialog.
Schlumberger Public
172
Schlumberger 19. Select the checkbox to the left of the newly created project filter. The basemap displays 44 wells that belong to the Litmus reservoir.
Filtering
Schlumberger Public
Review Questions
What is filtering? Why is filtering by Table Data useful? What data can you best access when you filter by Query? In what three forms can a filter be saved? What does Project Filter do?
Summary
In this module, you filtered by: Completion Table Data Category Match Well List Using an OFM map area OFM query
173
Filtering
Schlumberger In this module, you also: Used step functionality Familiarized yourself with project filtering and other filtering methods
In the next module you will learn about OFM project variables.
Schlumberger Public
174
Schlumberger
Filtering
NOTES
Schlumberger Public
175
Filtering
Schlumberger
NOTES
Schlumberger Public
176
Schlumberger
Project Variables
Module 6
Project Variables
There are many different ways to classify OFM variables (also called project variables), depending on how you would want to use them. Based on the table types that the variables belong to (or created from), you would have monthly, daily, sporadic variables, etc Based on data type, you would have date, numeric or alphanumeric (text) variables. However, the most recognizable classification, the OFM primary classification, is based on database (storage/processing) properties.
Learning Objectives
This module covers how to create calculated variables and calculated fields. You will have a chance to apply them in the next section, Reporting. At the completion of this module you will be able to: Edit Calculated Variables Add Calculated Fields Create Calculated Variables Use Calculated Field
Schlumberger Public
Input Variable is the simplest form of variable. Input variables are fields that belong to physical tables with physically loaded data. In other words, if you open the table in Access or in OFM you would see editable data. Input variables do not change value, i.e., every time a request is made to an input variable (on a specific entity), you would get the same copy of the data. In its Access database (project), OFM stores both the design and the data of the input variable. Calculated Variables are derived variables or dependent variables. OFM only saves the definition of a calculated variable, not its physical data. Therefore the value of a calculated variable may change from time to time. For example, each time a retrieval request for a calculated variable is made you may get a different copy of the data. The advantage of this variable type is that you always get the most up-to-date copy of the data, and you do not have to worry about project storage capacity.
177
Project Variables
Schlumberger Calculated Field (formerly known as Imputed Variable) is a unique variable type in OFM. There are scenarios when neither input nor calculated variable would be sufficient to address. Fortunately, with the existence of Calculated Fields, those problems are resolved; and the combination of these three types of variables has been proven to be a complete solution for any practical purpose. The exercise arises with the grouping option. One perfect example to demonstrate the concept of calculated field is the Gas-Oil Ratio, defined as Gas/Oil. On an individual level (single well), it does not make any difference. Yet on grouped level, there is a big difference between ratio of the sums and sum of the ratios. As you group the wells, OFM groups (sums) Gas from the source, groups Oil from the source, and then takes the ratio. This is similar to taking the average (per well). What if you want to group individual (well) ratios? The last exercise is even more complicated. Primary OFM data frequency is monthly, and users are used to creating (average) daily rates by dividing monthly productions by the reported numbers of producing days in the month. Grouping productions and producing days at the source and then taking the ratio would yield the (per well) average daily rate. Taking the ratios and then grouping them would result in a field daily rate. Depending on what you want to do with your data, you have to choose the correct implementation of which variable type to use.
Schlumberger Public
178
Schlumberger
Project Variables
2. Highlight the MonthlyProd table from the OFM Representation section of the window and right-click. A shortcut menu displays. Select Add.
Schlumberger Public
3.
A NewItem node is inserted into the table. Name the new field GOR.
4. Highlight the GOR field on the left pane. Select the Field tabbed page, and locate the Variable section of the window.
179
Project Variables
Schlumberger Public
There are several ways to use the Edit Calculated Field window. You can select the desired fields from Source Fields list. Click Add to add them to the Definition text field. Select the desired operators from the Operators section of the window to complete the statement. 6. In the Definition section, type: IIF( OIL <> 0, GAS/OIL, NULL ).
180
Schlumberger 7. Click OK. The Edit Calculated Field window closes and you return to the Edit Schema Tables window. The equation displays in the Equation section of the window.
Project Variables
8. Select the Units tab. Select cf/bbl = => scm/m3 from the Units list.
NOTE: You can always edit the equation by clicking the Edit button and changing it from the Definition text box.
Schlumberger Public
181
Project Variables
11. Select the Report tab and locate the Format section. Change the Width to 12.
Schlumberger Public
12. (Optional) Change the heading. 13. Select the Plot tab. In the Curve Name field, type(Calcd Field) Gas-Oil Ratio.
182
Project Variables
15. Click OK. The Edit Schema Tables dialog closes and you are returned to the main OFM window.
Schlumberger Public
Question
What do you think the variables mean?
Project Variables
Schlumberger learning how to create a few of the most commonly used calculated variables. Most of them will be verified on the Report, your next module. The Demo2007.OFM workspace comes with a built-in set of typical calculated variables. Examine their definitions and attributes and use them as a starting point.
2. Select Database > Calculated Variables. The Edit Calculated Variables window displays.
Schlumberger Public
An individual or asset team may be familiar with a standard set of calculated variables. The User column classifies variables as:
Standard Company Calculated Variables Calculated Variables for a specific asset team An engineers personal set of Calculated Variables A combination of the above points
The Class column specifies the category type of calculated variables as:
Class monthly calculated variables only Class daily calculated variables only Class water flood variables only
The window displays the subset of calculated variables of interest in an OFM project based on the User and Class selected. The default is to display all calculated variables.
184
Schlumberger 3. Click Add Variable. The Edit Calculated Variable window displays. In the text field at the top of the dialog type Monthlyprod.Gas/Monthlyprod.Oil. 4. Click OK. The Edit Calculated Variable window closes, and the variable displays in the Equation section of the Calculated Variables window.
Project Variables
Schlumberger Public
5. In the Name field type CV.GOR. Leave User and Class fields unspecified. 6. Assign attributes to the calculated variable. Select the Units tab and assign M as the Output Multiplier. In the Units section select cf/bbl. 7. Click Close.
NOTE: It is recommended to assign more attributes for this variable (Report Headers, Plot Name, etc.).
185
Project Variables
Schlumberger 4. In the text field at the top of the dialog, type @CumInput( MonthlyProd.Oil ).
Schlumberger Public
5. Click OK. The Edit Calculated Variable window closes, and you are returned to the Calculated Variables window. 6. In the Name field type CV.CumOil. 7. Leave User and Class empty for this exercise. 8. Select the Units tab. 9. Select M for Output Multiplier and select bbl (bbl = = >m3) for Units. 10. Select the Report tab. In the Decimals field type 3. 11. Change the Heading to Cumulative and Oil. On the first row type Cumulative and on the second row type Oil. 12. Select the Plot tab. In the Curve Name field type Cumulative Oil. 13. Select the Plot tab and assign the following attributes:
14. Click Close. The CumOil has been added to the project and can be found from the variable list. The @CumInput() function can only take input variable as argument. If your argument is not an input variable, use @Rsum() or @CRSum(). These system functions do not take previous volumes (precums) into account.
186
Schlumberger
Project Variables
Schlumberger Public
4. Click OK. The Edit Calculated Variables window closes, and you are returned to the Calculated Variables window. 5. From the Define tab, enter CV.FirstProdDate in the Name field. 6. Select the Units tab. Locate the Units list field and select Date. 7. Select the Report tab. In the Heading section on the first row type First, on the second row type Production, and on the third row type Date.
187
Project Variables
Schlumberger 6. Select the Report tab. In the Heading section on the first row type Max, on the second row type Oil, and on the third row type Production. 7. Select the Plot tab. Enter Maximum Oil Production in the Curve Name text field. 8. Select the following curve attributes:
Project Variables
Line Color Dark Red Line Type None Point Type Filled Star Point Size 5
9. Click Close.
Plot the MonthlyProd.Oil and CV.MaxOil versus Date and traverse through the wells/entities to see how the CV.MaxOil variable works.
Question
How could you plot only one value, right where the peak oil happens?
189
Project Variables
Schlumberger 2. Select ghCumoil from the list of variables. The properties associated with the selected variable are displayed in the Calculated Variables window.
3. Click the Edit button located in the Equation section of the window. The Edit Calculated Variable window opens displaying the definition of this variable.
Schlumberger Public
From this window you can edit/modify this equation @FmtName(Oil.Cum, @Last(Oil.Cum)). Analogous to the syntax of the @FmtDate() function in your earlier exercise, this variable will return the value of the last cumulative oil production (based on monthly records), with the plot name and other numeric attributes assigned for its properties.
190
Schlumberger 4. Click OK (or Cancel) to close the Edit Calculated Variable window. You are returned to the Calculated Variables window. Since this variable is used for retrieving the last value of Oil.Cum, it will use the variable attributes of Oil.Cum for display. Do not worry about assigning attributes for it (not even the field Width). 5. Select gh.Lease from the list of variables. Look at its definition. This variable retrieves the name of the lease the selected entity is related to.
Project Variables
Schlumberger Public
6. Click Add Variable. The Edit Calculated Variable window displays. 7. In the text field at the top of the dialog type @FmtName( Ratio.GOR, @Last(Ratio.GOR) ).
191
Project Variables
Schlumberger 8. Click OK. The Edit Calculated Variable window closes, and you are returned to the Calculated Variables window.
NOTE: Spaces and parentheses are not required. The use of spaces and parentheses promotes readability and makes it easy to understand the structure of the variable. OFM calculated variables are not case-sensitive.
9. In the Name field type gh.lastGOR and leave the rest of the settings at their default value. Remember that this variable will only be used for displaying on the header, so it is using the attributes of the Ratio.GOR variable. It is a good time to look at what attributes were assigned to the Ratio.GOR variable. 10. Locate and select the Ratio.GOR variable from the list.
Schlumberger Public
192
Schlumberger 11. Select the Units tab and look at the units specifications. It should be set to cf/bbl (though it appears as cf/bbl = => scm/m3), since this project is set to the English unit system.
Project Variables
NOTE: OFM reads the list of available units seen in Edit > Project > Units, to which you can add your own customized units.
12. Select the Report and Plot tabs. OFM will use the plot name of the Ratio.GOR variable as it displays gh.LastGOR on the header.
NOTE: If the plot name for Ratio.GOR is used then it will not be known that it is meant to be the last GOR.
Schlumberger Public
13. (Optional) Select the Units tab and verify that the Output Multiplier is set to M.
193
Project Variables
Schlumberger
Schlumberger Public
2. Locate the Variables list field and select Monthlyprod.Oil. 3. Click Add Curve. Another row is inserted in the Edit Plot dialog. 4. Click in the Variables field and select Monthlyprod.Gas.
194
Schlumberger When all the data are grouped and Monthlyprod.Oil and Monthlyprod.Gas are plotted vs. Date, the plot displays as pictured below (provided that the Y axis scale is Logarithmic and Legend to be displayed).
Project Variables
Schlumberger Public
5. Locate the Properties pane, expand the Headers property and click in the field to the right of Setup. A button displays in the Setup field.
195
Project Variables
7. Click Add. OFM adds the first header (row) to the Headers window. 8. Highlight the inserted row and click Assist. The Edit Header window displays.
Schlumberger Public
9. Locate the List Names section of the window. Select gh.lastGOR from the Project Variables list and click Add. The variable is displayed in the Header section of the window. 10. Click OK. The Edit Header window closes, and you are returned to the Headers window.
196
Schlumberger 11. Add two more headers one with the gh.Reservoir and one with the gh.Lease variables.
Project Variables
12. Click OK. The Headers window closes, and the header information displays on the plot. 13. Click on each individual header and move them to the desired location to display and change the fonts.
NOTE: The lease name and reservoir name are <Ambiguous>, which is correct. All the wells are grouped, but not all of the wells belong to the same reservoir and lease. If OFM cannot display a single name, it returns <Ambiguous>.
Schlumberger Public
197
Project Variables
Schlumberger 14. Locate the Step pane and select well Blue_1:Li_1C, to see a better result.
Schlumberger Public
Review Questions
What types of variables are in the OFM primary classification? Describe each of them. How does the intrinsic if statement improve the handling of calculated variables? How do Text Display variables improve your presentations?
Summary
In this module, you: Created calculated variables Edited calculated variables Added calculated fields
In the next module you will learn about plotting with OFM.
198
Schlumberger
Project Variables
NOTES
Schlumberger Public
199
Project Variables
Schlumberger
NOTES
Schlumberger Public
200
Schlumberger
Plotting
Module 7
Plotting
Plotting is one of the most commonly used modules in OilField Manager because it is easy to use, effective, and capable of doing many procedures for analysis of production data.
Learning Objectives
OFM supports up to six graphs in one plot window. Each graph can have up to 6 vertical (Y) axes, but it can only have one horizontal (X) axis, also each y-axis can have multiple variables. In this module, you will successfully learn how to perform the following procedures: Create a graph with one y-axis Create a graph with two y-axes Create a plot with multiple graphs Use Plot Lock and Graph Blow Up options Create stacked graph/plot on entities
Schlumberger Public
Create stacked graph/plot on variables Use Sum/Average/% Contribution plot types Create plot overlay Use Plot Annotations Use plot-related tools/utilities
201
Plotting
Schlumberger
3. Select Load. The wells are displayed on the basemap. 4. Select the Filter tab and click the top of the Filter pane. , the Group icon located at
Schlumberger Public
202
Plotting
6. Locate the Graph section of the window. Set Number of Graphs to 1 and Current Graph to Graph 1. 7. Locate the Y Axis section of the window. Set Number of Axes to 1 and Current Axis to Y-AXIS 1. 8. In the X-Axis section of the window, select Date from the Variable list field and 1 for the Multiplier. 9. Click in the Variables column and select Monthlyprod.Oil from the list of predefined variables.
Schlumberger Public
Plotting
Schlumberger 11. Click OK. The plot is generated and displayed in the OFM Plot window.
Schlumberger Public
204
Schlumberger 2. Use the vertical scrollbar to locate the Curve Attributes section of the Properties pane. 3. Increase the Line Width to 4.
Plotting
Schlumberger Public
4. Select the X-Axis. Use the vertical scroll bar to locate the Tics properties. Change the Line Color to Gray. The tic marks are updated to reflect the changes. 5. Locate the Font property displayed at the base of the Properties pane. Click in the property field, and a Browse button is enabled. Click the Browse button, and the Font window displays.
NOTE: Click on the X-Axis or Y-Axis to change the axis attributes in the Properties pane.
205
Plotting
Schlumberger 6. Change the Size to 9 and click OK. The Font window closes and the size of the text displayed on the X-Axis updates.
Schlumberger Public
7. Select the Y-Axis. Use the vertical scroll bar to locate the Tics properties. Change the Line Color to Gray. The tic marks are updated to reflect the changes. 8. Verify that the Y-Axis Scale Type is Logarithmic. 9. Locate the Font property displayed at the base of the Properties pane. Click in the property field, and a Browse button is enabled. Click the Browse button and the Font window displays. 10. Change the Size to 9 and click OK. The Font window closes and the size of the text displayed on the Y-Axis updates. 11. Select the graph to display the graph properties in the Properties pane. Locate the Graph Settings section of the Properties pane. 12. Click in the Setup field located in the Headers section, a Setup button is enabled. 13. Click Setup the Headers window displays. 14. Click Add, and a blank row is inserted in the Headers window.
206
Schlumberger 15. Click Assist. The Edit Headers window displays. Type @Name() in the Edit Headers window and click OK. The Edit Headers window closes.
Plotting
16. Click Font. The Font window displays. Select the following properties:
Font Arial Font Style Bold Size 12 Angle 0 Color Blue Background Transparent
Schlumberger Public
207
Plotting
Schlumberger 17. Click OK. The Font window closes and you return to the Headers window.
NOTE: To insert an image, such as a company logo, in the plot header click Add in the Headers dialog. A new row is inserted. Click Assist to display the Edit Header dialog. Type the system function @image and the full path of the image you want to insert. For example, @image(C:\Logos\Schl umberger.bmp). Click OK to close the Headers dialog. The image displays on the plot.
Schlumberger Public
18. Move the logo using the drag and drop method. The logo can also be resized by modifying the font properties. 19. Click OK to close the Headers dialog.
208
Schlumberger 20. Double-click on the plot. The Edit Plot window displays. 21. Click Add Curve two times. Two rows are inserted in the variables section of the dialog. 22. Select Monthlyprod.Gas and Monthlyprod.Water for the variables of the newly inserted rows. 23. Click OK. The Edit Plot window closes and the data are displayed on the plot.
Plotting
Schlumberger Public
24. Select the Monthlyprod.Gas curve on the plot. The properties display in the Properties pane. Assign the following attributes to the curve:
209
Plotting
Schlumberger 25. Select the Monthlyprod.Water curve on the plot. The properties are displayed in the Properties pane. Assign the following attributes to the curve:
Schlumberger Public
If you have multiple curves and want them to share some of the same properties, you can assign those properties by selecting All Curves from the Properties pane. For example, if all curves share the same Type, Width, Point, and Fill properties, you can select All Curves and change those properties once.
26. To change the size and/or location of your plot, select the plot (not the curves) and anchor points indicate that the plot is selected.
210
Schlumberger 27. Right-click and select Move/Resize from the shortcut menu. The mouse pointer changes to a four arrow-headed cross. 28. Select one of the anchor points and resize the plot.
Plotting
NOTE: Once you select a well from the list, you can no longer retrieve the grouped entity i.e., (18). You must reapply the filter and group the data.
29. From the well drop-down list, select a well. The plot refreshes and displays the data for the selected well.
NOTE: The First, Previous, Next and Last buttons enable you to quickly navigate through the wells in the list.
Schlumberger Public
211
Plotting
6. Click OK. The Edit Plot window closes. 7. Select the Cumulative Oil Production (Oil.Cum) curve and assign the following attributes to the curve:
Schlumberger Public
8. Select the Cumulative Gas Production (Gas.Cum) curve and assign the following attributes to the curve:
9. Select the second Y-Axis and change the tick marks to gray and the font size to 9 point.
212
Schlumberger 10. Move the legend to the upper left corner of the plot window.
Plotting
213
Plotting
Schlumberger 5. Change the Current Graph to Graph 3. 6. Select Oil.Cum for the X-Axis variable. For the Y-Axis variable select Water.Cut.
7. Switch the Current Graph to Graph 4. 8. Select Water.Cum for the X-Axis. Select Monthlyprod.Water for the Y-Axis.
Schlumberger Public
214
Plotting
If there are less than four graphs on the plot, the default setting is Overlap. If there are more than four graphs on the plot, the No Overlap option is automatic.
Schlumberger Public
Lesson 23 Charts
OFM 2007 provides you with an option to generate bar charts via the Plot module. Make sure you clear the previous filter before proceeding. This lesson addresses how to create bar charts.
3. Group the data by clicking the Group icon located at the top of the Filter pane.
215
Plotting
Schlumberger 4. If you do not have a Plot window open, click the Plot icon located in the OFM Analysis toolbar. The Edit Plot dialog displays. 5. In the Graph section of the dialog, set the Number of Graphs to 1. 6. In the Y-Axis section of the window, set the Number of Axes to 2 and the Current Axis to Y-Axis 1. 7. In the X-Axis section of the window, set the X-Axis Variable to Date. 8. Click Add Curve. There should be two blank rows displayed in the Variables section of the window. Add the Monthlyprod.Oil and Monthlyprod.Gas variables.
Schlumberger Public
216
Schlumberger 10. Click OK. The Edit Plot window closes and the plot displays.
Plotting
11. Select the Well Producing Oil (wells) BERRINGER curve. 12. From the Properties pane, change the following curve attributes:
Schlumberger Public
Line Color Dark Red Line Type Bar Line Width 1 Bar Width 1
In this example, oil and gas monthly productions are plotted against the left axis and the number of active (producing) wells plotted against the right axis for the Berringer lease category.
OilField Manager 2007 Fundamentals 217
Plotting
Schlumberger
The plots graphical representation can be saved as an image. OFM supports several image formats Windows Bitmap Format (*.bmp), JPEG Interchange Format (*.jpg), Tag Image File Format (*.tiff), and Enhanced Metafile Format (*.emf). Users can also select Edit > Copy and then Paste the clipboard contents to another application.
This exercise addresses using the OFM Plot Lock and Graph Blow Up options. 1. From the Plot window, select Analysis > Plot. The Edit Plot window displays. 2. Locate the Y-Axis section of the window and set the Number of Axes to 2. Set the Current Axis to Y-Axis 1. 3. In the X-Axis section of the window set the Variable to Oil.Cum. Select Water.Cut as the Y-Axis Variable. 4. In the Y-Axis section of the window set the Current Axis to YAxis 2. Select Monthlyprod.Water as the Y-Axis Variable. 5. Click OK. The Edit Plot window closes and the plot is displayed in a new window. 6. Assign the following attributes to the Water.Cut curve:
Line Color Blue Line Type Solid Line Width 3 Line Color Dark Blue Line Type Dashed Line Width 3
218
Schlumberger 8. Locate the Scale section of the Properties pane. Change the Scale Type for all the axes to Linear.
Plotting
9. From the Window menu command, verify that there are only three windows currently active (the basemap and two plot windows).
Schlumberger Public
10. Select the basemap and minimize it. Then from the Window menu select Tile > Vertically. The two plots display as shown below.
11. Click the Next button located in the Step toolbar. Notice both windows refresh, displaying the information of the newly loaded entity.
219
Plotting
Schlumberger 12. Select Blue_5:Sc_0 from the list of wells. Select the Water Cut/Monthly Water Production vs. Oil Cum plot window, then select View >Lock.
NOTE: Use multiple plot windows for multi-variable, if you prefer this method over the multi-graph window analyses. Use multiple plot windows with the Lock option for multi-entity analyses. You can lock as many windows/entities as you want; however, it may be too hard to see on your screen. If you have four or more graphs on the plot, they may not display information clearly. OFM provides the option to view individual graphs up close. Select the graph you want to view, then select View > Blow Up. The selected graph displays in full scale. Select View > Blow Up again to uncheck the option. The plot returns to its original state.
The active plot window has the word Locked displayed in the title bar. Now traverse the wells and only one window refreshes. The lock tool can be used effectively for comparison purposes. Typically you would want to use the same plot settings to compare two or more wells.
Schlumberger Public
4. Click OK. The Filter By Completion window closes, and the three selected wells display on the basemap. 5. Click the Plot icon. The Edit Plot window displays. 6. Select Date as the X-Axis. 7. Click Add Multiple Curves. The Add Multiple Curves window displays.
220
Plotting
9. Click OK. The Add Multiple Curves window closes, and the selected variable and associated wells display in the Edit Plot window.
Schlumberger Public
10. Click OK. The Edit Plot window closes, and the data display in the plot window. 11. Click the Stacked Plot icon, .
221
Plotting
Schlumberger 12. Modify the Line Color properties for each curve by assigning the following:
Schlumberger Public
13. Select the Y-Axis. Change the Scale Type property to Linear.
222
Schlumberger
Plotting
Schlumberger Public
223
Plotting
Schlumberger 5. Select Database > Calculated Variables. The Edit Calculated Variables window displays.
224
Schlumberger 7. Type Monthlyprod.Gas/6000. Click OK. The Edit Calculated Variable window closes.
Plotting
8. In the Name field type CV.Gas2OilEq. Leave the User and Class fields blank. 9. Select the Units tab and specify the unit of bbl ==>m3. 10. Click Close. 11. Click the Plot icon at the top of the OFM main window. The Edit Plot window displays. 12. Click Add Curves. Two blank rows are displayed in the variables section of the dialog. 13. Enter the data below in the Edit Plot window:
Schlumberger Public
Number of Graphs 1 Number of Y-Axes 1 X-Axis Date First Curve Variable Monthlyprod.Oil Second Curve Variable CV.Gas2OilEq
14. Modify the Line Color attributes for each curve. Select the Monthlyprod.Oil curve and change the color to Green. Then select the CV.Gas2OilEq curve and change the color to Magenta. 15. Select the Y-Axis and change the Scale Type property to Linear.
225
Plotting
Schlumberger 16. Click the Stacked Plot icon located in the Plot toolbar. Select Orange_19:Ad_1A from the Step toolbar.
Schlumberger Public
4. Click OK. The wells are displayed on the basemap. Select well Orange_19:Ad_1A. 5. Click the Plot icon. The Edit Plot window displays.
226 OilField Manager 2007 Fundamentals
Schlumberger 6. Click Add Multiple Curves. The Add Multiple Curves window displays. 7. Set the Category to UNIQUEID and the Variable to Monthlyprod.oil. 8. Click OK. The curves are listed in the Edit Plot window. 9. Make a single-graph, single-y-axis plot. Use Date as the horizontal variable.
Plotting
Schlumberger Public
227
Plotting
Schlumberger 11. Select the curve and change the properties to reflect the following:
12. Select the Y-Axis. Change the Scale Type property to Linear.
Schlumberger Public
13. Click
228
Schlumberger 15. Zoom in on the plot and move the legend to another location so it does not block your view.
Plotting
16. Locate the Curves section of the Properties pane and assign the following color attributes:
Schlumberger Public
Curve 1 Green Curve 2 Blue Curve 3 Yellow Curve 4 Red Curve 5 Magenta Curve 6 Cyan
229
Plotting
Schlumberger 17. If you select the X or Y axis and then right-mouse click, the different plot options display.
Other options available from the plot shortcut menu are described below.
Default Scale Automatic rescaling of the axes Move Move axis parallel from its original default position Shift Shifts the axis range Change Min Max Fix a minimum and maximum by scrolling with the mouse Change nr. of cycles Define the number of log cycles for the axis
Schlumberger Public
Schlumberger 8. From the Category list field select UNIQUEID, and from the Variable list field select Monthlyprod.oil.
Plotting
9. Click OK. OFM adds a number of Monthlyprod.oil curves to the list based on the number of UNIQUEIDs available in the filtered well list.
Schlumberger Public
10. Click OK. The Edit Plot window closes and the plot displays. 11. From the Properties pane locate Curves and select All Curves. Set the Line Type to Solid and the Line Width to 3. Select the Y-Axis and set the Scale Type to Linear.
231
Plotting
13. Click the Stacked Plot icon and verify that the method is set to Interpolation.
Schlumberger Public
14. (Optional) Toggle the stacking/summing methods between Interpolation and Carry Forward while switching the plot types to Sum, Average, and Percent Plot. 15. (Optional) With the help of your instructor, add more curves of different entity levels onto the plot.
Schlumberger level table named Notes. In OFM2005 the default annotation table was a system table named OFM_Data_Notes. When an OFM 2005 project is converted to OFM 2007 the OFM_Data_Notes system table becomes just Notes.
Plotting
Schlumberger Public
6. Click OK. The Edit Plot window closes. 7. Select the line displayed on the plot. From the Properties pane, set the Line Color to Green, the Line Type to Solid, and the Line Width to 3. Set the Curve Event to Notes.Notes.
233
Plotting
Schlumberger 8. Select the Y-Axis and set the Scale Type to Linear.
9. Double-click on the plot. The Edit Plot window displays. Click Add Curve a blank row is inserted in the Edit Plot window. 10. Add Monthlyprod.Gas to the variable list. 11. Click OK. The curve is displayed on the plot. Select the curve and change the Line Width property to 3.
Schlumberger Public
NOTE: You may have to reselect the Blue_1:He_0 from the list or close the plot window and reopen it for the changes to apply and display correctly.
12. Change the notes to IP_Henna_1 completed and Gas Lift initiation, respectively. 13. (Optional) You can add/delete annotations on an entity. The annotation editor fully functions as a typical data editor. Add/delete annotations from the Notes table and/or the sporadic table.
234
Schlumberger
Plotting
Schlumberger Public
3. Scroll up and down the X-Y Pair data window to view the data. Note the crosshairs that appear on the plot when you click any cell in the window. Also note the minimum, maximum, and average of the selected variable is calculated by default at the end of the column.
235
Plotting
Schlumberger
Schlumberger Public
Compute Line
Compute line provides a quick means to analyze information. In this next exercise you will learn to use the Compute Line features. 1. Load Prod_Wells98.txt and group the wells. 2. Select Database > Calculated Variables. The Edit Calculated Variables window displays. 3. Click Add Variable. The Calculated Variable window displays.
236
Plotting
5. The new variable is listed in the variables section of the dialog. Click Close. 6. Click the Plot icon. The Edit Plot window displays.
Schlumberger Public
7. Set the X-Axis Variable to Date. Select the newly created variable AveOilPrd as the curve.
237
Plotting
9. Change the curve attributes. Set the Line Color to Green, Line Type to Solid, and Line Width to 3. 10. Select Tools > Compute Line or right-click and select Compute Line. 11. Visually decide the best fit linear line for the curve and draw the line.
Schlumberger Public
12. Select Tools > Compute Line Lock or the line will disappear upon your next action.
238
Schlumberger 13. Select Tools > Trace Point and Line Attributes. The Trace Attributes window displays.
Plotting
14. In the Line Attributes section of the window set the Color to Magenta and the Width to 4. 15. Click OK. The Compute Line changes color and width.
Schlumberger Public
239
Plotting
NOTE: You can use the Next and Previous navigation buttons to view the entire list of wells; however, as the producing ranges of the wells are different, the Compute Line may not be displayed correctly on the graph.
Schlumberger Public
Graph 1 2 Y-Axes Graph 2 Stacked Plot Graph 3 Plot Overlay. You can use LEASE or RESERVIOR levels to narrow down the number of entries.
Review Questions
What is the difference between a Plot and a Graph in OFM? What type of variable can you not plot? What is the advantage of using a Plot Overlay? What does a Compute line do? Which plotting option helps you access data quality control?
240
Schlumberger
Plotting
Summary
In this module, you: Created a graph on one y-axis Created a graph on two y-axes Created a plot with multiple graphs Utilized the Plot Lock and Graph Blow Up options Stacked graphs/plots on entities Stacked graphs/plots on variables Familiarized yourself with sum, average, and percent control plots Created plot overlay Used plot annotations Used other plot related tools and utilities.
In the next module you will learn about creating and formatting reports in OFM.
Schlumberger Public
241
Plotting
Schlumberger
NOTES
Schlumberger Public
242
Schlumberger
Reporting
Module 8
Reporting
OFM, as an analytical tool, has its own features tailored for specific needs. It has the advantage of having more than 230 system functions and an environment for writing macro-like functions. An OFM report has been proven to be a powerful and effective tool for outputting information, processing/manipulating data, and testing customized variables. Unlike plotting, the fields displayed on the report do not have to be pre-constructed variables.
Prerequisites
Before going directly into the report module, it would be useful for you to get a basic understanding of different types of OFM variables.
Learning Objectives
In this module, you will successfully learn how to perform the following procedures: Create a Monthly Report Create a Daily Report Create a Sporadic Report Formatting a Report Additional Report Tools Exporting to Microsoft Excel
Schlumberger Public
Rules
Do not mix sporadic variables with either monthly or daily variables on the report. Static data can be retrieved at any time because they are unchanged with time.
243
Reporting
Schlumberger Monthly and Daily data are date-based, and there are algorithms to allow them to work compatibly (though not recommended). Sporadic data, on the other hand, are different. When processing data requests, OFM 2007 treats sporadic data the same way it does monthly or daily data. In OFM 2007 sporadic data also can be grouped, unlike in previous versions. Any arithmetic calculation involving a null operand results in a null. A null data point is an empty data point. An empty cell in Excel constitutes a null (an empty field) in Access. Sometimes, a null is equivalent to a zero (0). Other times, it constitutes a missing data point. In-line calculations are allowed on the report. Thus, resulting null values could easily happen. In such a situation, you may need to have some null-handling procedures before carrying out the calculations in order to not see the nulls. On the report, a numeric null is displayed as an asterisk (*).
Schlumberger Public
244
Schlumberger 4. In the Select text box, enter @name(), date, monthlyprod.oil, monthlyprod.gas, monthlyprod.water.
Reporting
Schlumberger Public
@name() is a system function. You can click the System Functions button and select Name from the list. The @ sign and the parentheses are automatically added to denote this is an OFM system function. Date, monthlyprod.oil, monthlyprod.gas, and monthlyprod.water are all input variables. You can type them in (with the commas), or select the variables from the list to add in (again, double-click or highlight-and-Add). To access variables, you have to be on the Project Variables level. Since you are currently on the System Functions level (to get @name()),click the Project Variables button. After you add a new variable into the Select variable list (without typing), OFM adds a comma after the last variable to separate it with the newly added variable. The Keypad contains Command/Keyword buttons, logical operators, and numeric keys. If needed, you can add them to the Select box (without selecting the Add button).
245
Reporting
Schlumberger 5. Click OK. OFM generates the report and displays it in the OFM main window.
The first variable (@Name()) is a static variable, as it is a constant with respect to time. The other variables are in monthly frequency. 6. Click Next in the Step toolbar to go through a couple of wells to see how the data is refreshed. Sometimes you will get to a well that does not have monthly data. When this occurs an empty report displays.
Schlumberger Public
7. Select Blue_1:Li_1C. Add a real static variable and a few of those calculated fields and calculated variables that were created earlier. 8. Double-click on the report and add sc.reservoir, monthlyprod.gor, and ratio.gor to the Select text field.
246
Reporting
Notice that the values of monthlyprod.gor and ratio.gor are the same (single well level). 10. Group all the wells, and then you can see that they are different.
Only a subset of the wells in this project has daily data. To avoid seeing empty reports, filter the well list down to those that contain daily data (from the Dailyprod table).
247
Reporting
Schlumberger 4. In the Select field type @name(), date, dailyprod.oil, dailyprod.gas, dailyprod.water.
Schlumberger Public
5. Click OK. The report may return several null values. Scroll through the report to see the data.
Question
Why do you have a lot of nulls at the beginning of the report? It has something to do with daily precums. For detailed information about precums ask your instructor.
248
Schlumberger
Reporting
Schlumberger Public
2. Select well ORANGE_1:Ad_4 from the Step toolbar. The selected well is highlighted on the basemap. 3. Click the Report icon to generate a report. The Edit Report window displays.
249
Reporting
Schlumberger 4. In the Select field type @name(), date, test.oil, test.gas, test.water.
Schlumberger Public
6. Review the report. Note that the data points are reported but with no specified dates. Double-click on the report. The Edit Report window displays.
250
Schlumberger 7. Replace the Date variable with Test.Date and click OK.
Reporting
You can see that the data are now reported correctly for this well. Static data also can be displayed with sporadic data. 8. Double-click on the report and the Edit Report dialog displays. Add sc.lease to the parameter list and click OK.
Schlumberger Public
251
Reporting
Schlumberger
Schlumberger Public
252
Reporting
Schlumberger Public
5. Click OK the report displays. 6. Select well Blue_1:Li_1C from the Step toolbar.
253
Reporting
Schlumberger 7. Locate the Columns section of the Properties pane. Review the attributes listed in this section of the Properties pane.
Schlumberger Public
Current Column enables you to select the variable for editing. All report attributes seen are specified to the selected variable. Width is the numeric value of the display field. You may see a string of asterisks (******) on the report if the width of the column is not wide enough to display the value. If a text field is not wide enough, the text is truncated. Decimal Places are number of decimal places to be displayed when the variable returns a numeric value. Justification aligns text in the columns to the left, center or right. By default, a text field is left justified and a numeric field is right justified. Display enables you to set the unit system to either Metric or English. Modifying this value overwrites the project system unit. Heading First Row contains the variables for the first row header. Heading Second Row contains the variables for the second row header.
254
Schlumberger
Reporting
Heading Third Row contains the variables for the third row header. Hide Duplicates hides duplicate data contained in the selected column if it is identical to the previous value. Units are display unit in the column header. Any specification here overwrites the specification set with the variable. The values displayed are in accordance to this unit. Multiplier displays a list of multipliers that uses a multiple of the database unit. Modifying this value overwrites the preset multiplier of the selected variable. The values displayed are in accordance with this multiplier specification.
Schlumberger Public
9. Type @Today(), Last+gh.cumoil, Last+gh.cumgas, Lastgh.cumwater and align all headings to the left.
NOTE: You can edit, delete, or add more headers. You can also save all the headers to apply them to additional reports. Footers function in the same manner as headers, the only difference is the location of the data displayed. Footers are displayed at the base of the report, as opposed to headers, which are displayed at the top of reports.
255
Reporting
Look at the report headers. All report headers are acceptable, excluding the date format. By default, the dates are displayed as an eight-digit integer (YYYYMMDD) with 3 decimals. Use the @FmtDate() system function to format the date. 11. Select Edit > Header and Footer. The Header/Footer window displays. 12. Select the Header tab and highlight @today. Replace this text with @FmtDate( @today(), Mmm-dd-yyyy).
Schlumberger Public
256
Schlumberger 14. Select Edit > Report Display. The Edit Report Attributes window displays.
Reporting
NOTE: From the Set Date tab you can display records of interest based on date criteria. You can report data at a certain date, at the last date of the entity, at all available dates, or within a certain date range.
15. To find out the available date range (monthly and daily) of the project, locate the Database Date Range section of the dialog and click Find Daily and Find Monthly Database Date Range.
Schlumberger Public
16. Locate the Options section of the window and select Range. In the Starting text field type 1/1/1980.
257
Reporting
18. Select Edit > Report Display. The Edit Report Attributes window displays. In the Options section of the dialog select All. Then select the Sort tab. 19. From the First list field select monthlyprod.oil and check Descending. 20. From the Second list field select monthlyprod.gas and check Descending.
Schlumberger Public
21. Click OK. The report displays with peak monthly oil production data displayed at the top of the report. The monthly production gas data follows.
258
Schlumberger 22. From the Properties pane, change the Subtotal property to SUM and the Break property to At End of Report.
Reporting
Schlumberger Public
23. Scroll to the end of the report. Notice the numbers displayed at the bottom of the report constitute cumulative oil, gas, and water production of the well with precums. You can scroll up the report and compare them with the numbers on the headers. This well has precums. 24. Double-click on the report. The Edit Report window displays. 25. After the Date variable add @year(date). The Select text box should now contain the following:
26. Click OK. 27. From the Properties pane locate Break when this column changes and set the value to Yes. 28. Locate the Break property and change this value to None. 29. Select Edit > Report Display. The Edit Report Attributes window displays.
OilField Manager 2007 Fundamentals 259
Reporting
Schlumberger 30. Select the Sort tab. Click Clear to remove all sort criteria and click OK. The report displays and at the end of each year the sums display for oil, gas, and water production. 31. You can generate a similar report without using the @year(date) variable. Double-click on the report and the Edit Report dialog displays. 32. Remove the @year(date) variable and the comma that follows and click OK. 33. From the Properties pane locate Break and set to At Condition. The Edit Condition row is inserted below the Break property. 34. Click in the blank field to the right of the Edit Condition property. This action enables a Browse button. Click the button. The Create Condition window displays. 35. In the Condition = field type @change( @year(date) ).
Schlumberger Public
36. Click OK. The Create Condition dialog closes and the report is displayed.
260
Schlumberger
Reporting
4. Select Edit > Report Parameters. The Edit Report window displays. 5. Add monthlyprod.gas/monthlyprod.oil to the end of the statement in the Select field.
Schlumberger Public
6. Click OK to display the report. 7. Scroll down the report to verify that the values of ratio.gor and monthlyprod.gas/monthlyprod.oil are the same. They could appear slightly different due to Multiplier and/or Field Width/Decimals specifications. 8. Double-click on the report. The Edit Report window displays. 9. After the last variable (monthlyprod.gas/monthlyprod.oil), add a space and enter CalcGOR. This name will be used as an alias for this column. 10. Click OK. The report displays with <CalcGOR> as the last header.
261
Reporting
Schlumberger 11. Select the <CalcGOR> column. In the Properties pane change the Units property to cf/bbl and change the Decimal Place value to 1. 12. Double-click on the report. The Edit Report window displays. 13. Remove all variables listed after monthlyprod.gas. Type monthlyprod.oil+monthlyprod.gas/6000 BOE.
14. Click OK. The report displays. More complicated variables can be written directly on the report and their return values are processed and displayed. In the next exercise, you will create the peak (maximum) monthly oil production.
Schlumberger Public
2. In the Select section of the dialog type @name(), date, monthlyprod.oil, monthlyprod.gas, @tmax(monthlyprod.oil, 1). 3. Click OK to display the report. It will show that somewhere in the history of this well it achieved the peak production of 13802 barrels per month.
4. Double-click on the report. The Edit Report window displays. 5. At the end of the current text string displayed in the Select section of the window type @first( date, @tmax(monthlyprod.oil, 1)=monthlyprod.oil).
262
Schlumberger 6. Click OK. The Edit Report window closes and the report is displayed. 7. Select the last column of the report. From the Properties pane change the Decimal Places value to 0.
Reporting
NOTES: ! is the NOT operand. The exclamation point can be generated by clicking NOT on the keypad.
8. Double-click on the report. The Edit Report window displays. 9. At the end of the text string displayed in the Select section of the dialog type WHERE (monthlyprod.oil !=@null() & monthlyprod.gas !=@null() ). 10. Click OK. The Edit Report window closes and the report displays.
& is the AND operand. It can be generated by clicking the AND button on the keypad. I is the OR operand. It can be generated by clicking the OR button on the keypad.
The report has a two-fold structure, the setup (design) and the output (result). To save the setup design of your report, with the report window active select File > Save Format. OFM saves the report as a binary *.rpt file, which can be opened by selecting File > Open or using the right-click menu in the Analysis pane. Select File > Save File to save the results of a report. OFM saves the report output to a text file or RFT (Rich Text Format) depending on the specifications you set. Any text editors that support these file formats can open the report files so anyone can utilize the reports without having OFM installed. In addition, OFM also gives users the option to format the output text files in some special formats. These files can be loaded to OFM provided that the field names have been defined beforehand. 1. Double-click on the report. The Edit Report window displays. Click Clear in the Keypad section of the dialog. 2. In the Select section of the dialog type headerid.uniqueid, date, monthlyprod.oil, monthlyprod.gas, monthlyprod.water. 3. Click OK to generate the report.
NOTES:
The *.rpt file is saved in XML format in OFM 2007. The two selections for saving a report are as a text file or a comma-separated value file; there is no rich text format.
263
Reporting
Schlumberger 4. Select View > Summary > By Item. OFM puts all individual well reports together, ordered by well name. It may take a while to generate such a report, depending on how many wells there are on the list. Scroll through the report to verify the results.
5. From the Properties pane set the Current Column to headerid.uniqueid. Set the Hide Duplicate value to Yes. Set the Break when this column changes value to Yes. The report is updated to reflect the following.
Schlumberger Public
6. You can also generate a report ordered by dates. Change the Hide Duplicates value to No and the Break when this column changes value to No. 7. Select View > Summary > By Date. This type of summary report may take a while to complete, so be patient while OFM retrieves the wells, dates, and data and sorts them by date.
You can narrow down the date range by using the Set Date tab of the Edit Attributes dialog or with a WHERE condition. This will restrict the number of records being displayed and save some processing time.
264
Schlumberger You can change the report font and/or the report header font from the Edit > Report Font, or by right-clicking on the report and selecting Report Font from the shortcut menu.
Reporting
265
Reporting
Schlumberger 7. Select Field1 located in the Access Fields column. Rename Field1 to UniqueID, and with UniqueID selected, click Key. 8. Highlight DATE and click Key. This action sets the Date as the second key of this table.
NOTE: If you want OFM to automatically update the Access table when the report changes, check Automatically update Access when the report is updated.
Schlumberger Public
9. Change the other three field name if you wish. Click Close and Update. A message dialog displays prompting you to confirm creating the Access table.
10. Click Yes. The dialog closes, and you are returned to the report.
266
Schlumberger 11. Select Database > Schema Tables. The Edit Schema Tables window displays.
Reporting
12. Check the Adjusted Monthly table from the list of Available Tables. A message dialog displays prompting you to confirm your decision.
Schlumberger Public
267
Reporting
Schlumberger 13. Select Yes. OFM successfully included the table into this project for use. You can verify all the field names from the OFM Representation section of the Edit Schema window. Remember the gas field in this table is in base unit (scf). You should select it and assign the correct input multiplier for it as well as specify your desired output multiplier.
Schlumberger Public
268
Schlumberger 3. Select Automatically update Excel when the report is updated, Write column names to Excel and Write units for OFM columns to Excel. 4. Select the column names listed below the Excel Columns and rename them as desired.
Reporting
Schlumberger Public
5. Click Close and Update. The data are exported and displayed in an Excel worksheet.
269
Reporting
Schlumberger
Automatically update Text File when the report is updated Append to Text File Write OFM Report Headers to Text File Write Column Names to Text File Write units for OFM columns to Text File.
3. In the File text field specify the path of the text file or browse to the location you want to save the file to.
Schlumberger Public
NOTE: OFM provides you with the ability to format the date column by selecting the date format in the Properties pane. Use the @image( ) system function to insert a logo in the report header. Provide the full path of the image you want to insert inside the parenthesis. For example: @image(C:\Logos\Schlu mberger.bmp).
4. Click Close and Update. OFM writes the current report data to a text file. This text file also can be used as a load file to load data into OFM.
Review Questions
Why should you filter a well list before creating a daily report? What is the structure of a report and how are the different parts saved?
270
Schlumberger Why would you want to create a table from a report? To what formats can you export an OFM report?
Reporting
Summary
In this module, you: Created a monthly report Created a daily report Created a sporadic report Formatted a report Utilized additional reporting tools Exported the report data to Microsoft Excel
In the next module you will learn about export data project data.
Schlumberger Public
271
Reporting
Schlumberger
NOTES
Schlumberger Public
272
Schlumberger
Exporting
Module 9
Exporting
Imagine that you are working on a shared (network) project, which has thousands of wells. You are interested in just a hundred wells that belong to a certain field and you have to go on a business trip for a while. Knowing that you will not have the network connection, you may have to do something beforehand so you can still work on your project while out of the office. OFM provides some useful options that can be used to copy all the data or a subset of the data for the filtered list of wells to your local hard drive. You can export all the critical information to text files so you can rebuild your complete database if something goes wrong. For maintenance purposes, you might want to keep a copy of all the text files (definition data). All the exporting options (related to the project) can be accessed from the global Database menu.
Learning Objectives
In this module, you will successfully learn how to perform the following procedures: Exporting Database Tables Exporting Variables to Tables Exporting Text Load Files
Schlumberger Public
273
Exporting
Schlumberger
2. Select the checkbox of the table(s) you want to copy and specify the path/database name you want to copy to. For example, check the DAILYPROD table and tell OFM to write its data to a database in C:\Temp\ named export1. 3. Click OK. OFM will export the data for you. 4. (Optional) If you have Microsoft Access installed on your computer, you can open the export1 database and verify the results. 5. Suppose you want to create a small project on your local hard drive that only contains your wells of interest. Select Database > Workspace Snapshot. The Workspace Snapshot window displays.
Schlumberger Public
NOTE: OFM also provides the option to export the project (text) loadable files for maintenance or for recreating the project using the ASCII loader. If you export the definition file, all the (table) data files and calculated variables (parser files) and then use the ASCII Data Loader to recreate the project, you will have a similar project.
274
Schlumberger 6. Click the browse button to the right of the Workspace File text field. The Open window displays.
Exporting
7. Select the desired file name and click Open. The full path of the Workspace File and Database File are displayed in the Workspace Snapshot window.
Schlumberger Public
8. Click OK.
275
Exporting
Schlumberger
Schlumberger Public
276
Schlumberger
Exporting
2. Select the tables one at a time and click OK. The Save As window displays. 3. Specify the name in the Save As window and click Save. When OFM has completed exporting the table, you are returned to the list of Tables to Export window. 4. When finished, click OK to conclude the operation.
Schlumberger Public
277
Exporting
Schlumberger 1. Select Database > Export > Selected Text Load File(s) > Calculated Variables. The Export Calculated Variables window displays.
2. Click the browse button to the right of the File field. The Parser window displays.
Schlumberger Public
3. Type a file name in the File name field. The default file extension name is *.par. 4. Select a location to store the saved file. 5. Click OK. The Parser window closes, and the path displays in the File field. 6. Click OK.
Schlumberger dialog for you to enter the specifications. You will have the option to export these files using the well aliases having the coordinates in Metric units.
Exporting
Schlumberger Public
The tabbed pages of the Export DCA Data window are described below.
279
Exporting
Schlumberger Cases and Phases enables you to select a case (or all cases) and the phase(s) to be exported. Results tabbed page enables you to specify the file name and select the variable of interest to export. Forecast tabbed page enables you to specify the file name and date range to export forecast data (date frequency).
Review Questions
Why do you need to use caution when exporting variables to tables? Why would you export text load files from OFM? What data types can you export from OFM?
Summary
In this module, you: Exported database tables
Schlumberger Public
In the next module you will learn about OFM utilities for project management, data processing/manipulation, and customization.
280
Schlumberger
Exporting
NOTES
Schlumberger Public
281
Exporting
Schlumberger
NOTES
Schlumberger Public
282
Schlumberger
Module 10
OFM has a uniquely intuitive collection of tools (utilities) that provide users with quick access to project management, data processing/manipulation, and customization functionality. This section describes these tools and their use. By the end of this module you should be able to understand and utilize these features to customize your projects, to make them more useful, more accessible, and to extract the best values from your data.
Learning Objectives
In this module, you will successfully learn how to perform the following procedures: Manage Project Settings Use Data Normalization Use the Data Register
Schlumberger Public
Preferences
The Preferences tabbed page enables you create user defined settings for displaying variables, warning and prompts, and registry settings.
Input Variable Lists Your database many have tables/fields that are defined but do not contain any data. OFM provides the option to display only the variables (fields) that are
283
Schlumberger associated with some data to refine the long list of input variables to be displayed. This is just a display option. Your empty variables will not be deleted from the database. The default setting is to display all variable name in lists. OFM Warning and Prompts If you do not want to see the warnings/prompts you can select to suppress them by clicking Suppress All. Restore All nullifies the Suppress All request. OFM Settings Reset Restores all the OFM default settings. Clicking this button will cause OFM to reset all user-specified options in the Settings dialog.
Group
The Group tabbed page of the Settings window enables you to set global grouping parameters.
Schlumberger Public
Sum individual well forecasts when grouping wells If you have performed forecasts on individual wells and want to retrieve the forecast for a group of wells select this option. Execute user procedure after grouping Upon grouping (selecting), OFM automatically executes the associated user function (procedure). This option is primarily used for automating tasks.
DCA
The DCA tabbed page enables you to associate parameters/qualifiers and set the default case used in forecasting.
284
Schlumberger
Units
The Units tabbed page contains everything needed to display your project in Metric units. Select Use Metric Units in order to display data in metric units by default, and OFM will do the internal conversions. OFM does not permanently apply unit conversions to the database.
1. Clear any previously applied filter. 2. Group all the wells on the basemap (231 wells). 3. Click the Report icon to generate a report. The Edit Report window displays. 4. In the Select section of the window type the following: date, monthlyprod.oil, monthlyprod.gas, monthlyprod.water.
285
6. Double-click on the report. The Edit Report window displays. 7. Locate the Keypad section of the dialog and click Clear. 8. In the Select section of the dialog type date, dailyprod.oil, dailyprod.gas, dailyprod.water. Click OK the report displays. 9. From the Property pane expand Report and from the Frequency list field select Monthly.
Schlumberger Public
286
Schlumberger
Date Display
The Date Display tabbed page enables you to display your monthly dates at the beginning, middle, or the end of the month.
NOTE: The settings made from this page do not change the monthly data.
Schlumberger Public
Multiply By Factor
The Multiply By Factor tab enables you to modify production and injection data by either a static or dynamic (with time) factor.
287
Schlumberger If Dynamic is selected, factors greater than one are assumed to be percentages.
Only the variables that have the Multiply by Factor option (in the Grouping Options section of the Math tabbed page) turned on are affected and so are their derived variables.
Schlumberger Public
288
Schlumberger
Schlumberger Public
8. Click OK. The Add Multiple Curves window closes and you return to the Edit Plot window where the multiple curves are displayed.
9. Verify that you have Date as the X-Axis variable and only one graph.
289
Schlumberger 10. Click OK to display the plot. (You many want to increase the curve width and move /resize the graph and legend in order to see things clearly.)
11. Notice that the wells started producing at different points in time. Now select Tools > Settings and select the Normalize Tables tab. 12. Select the Enable Normalize Tables option. 13. Select the InitialProdMonth variable from the Starting Condition list. 14. Leave the Ending Condition unassociated (blank). 15. Select Default for the Date Option and Filtered Wells for the Well Option.
Schlumberger Public
The options available from the Normalize tab are described below:
290 OilField Manager 2007 Fundamentals
Schlumberger
Ending Condition (Optional) Sets the data point to be displayed. On the plot, all data after this point will be truncated. This feature does not change the physical data; it simply changes the display (data retrieval time). Date Option Default All data is shifted to the earliest available date in the database, regardless of the variable associated in Starting Condition. Date Option Earliest The earliest date associated with the variable in the Starting Condition. Date Option Latest The latest date associated with the variable in the Starting Condition. Well Option All Wells Runs normalization on all the wells. Well Option Filtered Wells Runs normalization only on the filtered wells. To return to normal mode (de-normalize) just clear the Enable Normalize Tables checkbox.
16. Click Normalize to execute the normalization operation now, without closing the Settings dialog. 17. Click OK to close the Settings window and view the plot.
NOTE: If you do not click Normalize, OFM initiates the normalization operation when you click OK.
Schlumberger Public
291
Schlumberger
Exercise 80 Creating a Variable to Represent the Average Monthly Oil and Creating a Data Register
1. Select Database > Calculated Variables. The Calculated Variables window displays. 2. Click Add Variable. The Edit Calculated Variable window displays. Type @Aveinput( monthlyprod.oil).
3. Click OK. The Edit Calculated Variable window closes, and you are returned to the Calculated Variables window.
Schlumberger Public
4. Type CV.AveOil in the Name field. 5. Click Close. 6. Click the Report icon. The Edit Report window displays. 7. In the Select section of the dialog type Date, Monthlyprod.oil, CV.AveOil and click OK. The Edit Report window closes, and the report displays.
292
On an individual well level, the monthly oil production and the average oil production are the same. On a group level, you expect them to be different . The ratio of individual oil production (the well) to the average production of an entity (a reservoir which the well belongs to) determine the performance of that well compared to the average. A ratio greater than unit (1) is considered above average and vice versa. 9. Clear the filter. 10. Select Category, then Reservoir and Litmus_1. 11. Group the data and select the Report tab to view the report data.
Schlumberger Public
NOTE: Notice the first several records. You should have about ten wells producing at the beginning (you can check that by the @CountInput() function). If you select an individual well now, the two numbers will be the same. Thus, you would want to register one for the grouped entity and then recall the data for later calculations.
12. Select Tools > Data Registers. The Data Registers window displays.
293
Schlumberger 13. In the Comment field type Registering Monthly Average Oil per Well for Litmus Reservoir. 14. From the X list field select Date. 15. From the Y list field select CV.AveOil. 16. Select the Lock checkbox, the (top) register location # refreshes and registers the first memory location for Litmus_1.
17. Click OK. The Data Registers window closes, and you are returned to the report. 18. Double-click on the report. The Edit Report window displays. 19. Add @reg( 1, Date, "date").
Schlumberger Public
20. Click OK. The Edit Report window closes and the report is updated.
NOTE: Notice the values of the last two variables. They should be the same. You may want to change the decimal specification to read the exact values.
294
Schlumberger CV.AveOil was saved to the data register; as long as the report displays CV.AveOil under the same conditions as the data register was saved, the variables will be the same. The only reason the last two columns display differently is because one displays no decimal places and the other displays two, as the note to the left states.
21. Double-click on the report. The Edit Report window displays. 22. Edit the report parameters and add monthlyprod.oil/@reg( 1, Date, date) to the parameter list. Click OK. 23. Increase the number of decimals in the last column. The report refreshes. Navigate through all the wells to verify the results.
Schlumberger Public
The second argument of the @reg() function (i.e., Date) is an output frequency (control) variable. If the variable there is not the same as the X variable being registered, in that register location (first argument of the function), OFM performs linear interpolation of the Y variable. There is no extrapolation scheme in the @reg() function. 24. Unlock the register and observe the difference. 25. Close the report but do not clear the register.
NOTE: Unlocked registers refresh when the entity changes.
295
Schlumberger
Review Questions
What five types of project settings can you customize in OFM? What is the purpose of the Normalization function in OFM? What is a data register and why is it useful?
Summary
You have completed the OFM Fundamentals training. In this module, you: Managed the project settings Utilized the data normalization feature Utilized the data registry
Schlumberger Public
296
Schlumberger
NOTES
Schlumberger Public
297
Schlumberger
NOTES
Schlumberger Public
298