You are on page 1of 41

OIL FIELD MANAGER

OFM 2005

MANUAL DE REFERENCIA
CONTENIDO

TABLA DE CONTENIDO

1 LA BASE DE DATOS OFM ........................................................................................................................ 1

2 TIPOS DE INFORMACIN ....................................................................................................................... 4

3 TIPOS DE TABLAS PARA INFORMACIN DEFINIDA...................................................................... 7

3.1 TABLAS ESTTICAS ......................................................................................................................... 7


3.2 TABLAS PERIDICAS ....................................................................................................................... 8
3.3 TABLAS ESPORDICAS ................................................................................................................... 9
3.4 TABLAS DE REFERENCIA CRUZADA Y TABLAS DE BSQUEDA............................................ 9
3.5 TABLAS TIPO TRACE....................................................................................................................... 12
3.6 TABLA DE VARIABLES DE CLASIFICACIN (SORT CATEGORY - SC).................................... 12
3.7 RELACIONES ENTRE LAS TABLAS DE UN PROYECTO OFM .................................................. 13

4 TIPOS DE VARIABLES EN OFM........................................................................................................... 15

4.1 VARIABLES DE ENTRADA............................................................................................................. 15


4.2 VARIABLES CALCULADAS ........................................................................................................... 15
4.3 VARIABLES ATRIBUIDAS.............................................................................................................. 16

5 FUNCIONES DEL SISTEMA DE OFM .................................................................................................. 18

5.1 REGLAS PARA LA UTILIZACIN DE LAS FUNCIONES DEL SISTEMA .................................. 19


5.2 USO DE FECHAS EN LAS FUNCIONES DEL SISTEMA ............................................................... 20
5.3 NOMENCLATURA DE LAS FUNCIONES DEL SISTEMA............................................................ 21
5.4 FUNCIONES DEFINIDAS POR EL USUARIO ................................................................................ 22

6 ARCHIVOS PLANOS EN FORMATO OFM ......................................................................................... 23

6.1 ARCHIVOS DE DEFINICIN DE TABLAS..................................................................................... 24


6.2 ARCHIVOS DE DEFINICIN DE VARIABLES CALCULADAS .................................................. 29
6.3 ARCHIVOS DE DATOS .................................................................................................................... 32
6.3.1 Formato Libre ................................................................................................................................ 32
6.3.2 Formato Fijo .................................................................................................................................. 33
6.3.3 Formato Especial ........................................................................................................................... 34

7 CREACIN DE UN PROYECTO OFM.................................................................................................. 35

OFM 2005 MANUAL DE REFERENCIA i


BASE DE DATOS

1 LA BASE DE DATOS OFM

OFM es una aplicacin que utiliza un conjunto de tablas vinculadas para almacenar, analizar y
visualizar datos; cada tabla est relacionada con otras tablas mediante un identificador nico.
Este conjunto de tablas vinculadas constituyen una base de datos relacional (en OFM, a este
conjunto de tablas vinculadas se le denomina proyecto).

En un sistema de gestin de bases de datos relacional, cada tabla almacena informacin sobre
un tema (por ejemplo, los datos de los pozos, la historia de produccin), y dispone de unas
columnas que contienen los diferentes tipos de informacin sobre ese tema, que se denominan
campos o variables de la tabla (por ejemplo, las coordenadas del pozo, los volmenes
mensuales de produccin), y de unas filas que describen todos los atributos de una nica
instancia del tema (por ejemplo, los datos de un determinado pozo), las cuales se denominan
registros de la tabla.

Cada uno de los registros de cualquier tabla debe ser identificado de forma nica. Es decir,
algn campo (o combinacin de campos) de la tabla debe albergar un valor nico para cada
registro de la misma. Este identificador nico es lo que se denomina clave principal o clave
primaria (primary key), el cual es el que permite adems relacionar los datos de la tabla con las
tablas vinculadas a ella.

El sistema que unifica las diferentes tablas en la base de datos se conoce como motor de base
de datos (database engine). Las principales funciones del motor de base de datos son:

Mantener la consistencia de los datos evitando que queden datos hurfanos en la base de
datos; por ejemplo, si el usuario borra un pozo de la tabla principal, los datos relacionados a
este pozo que se encuentren en otras tablas tambin deben borrarse.
Mantener las relaciones entre tablas. Esto es lo que permite que al momento de consultar
los datos pareciera que todos estuvieran en una sola tabla sencilla.

OFM 2005 MANUAL DE REFERENCIA 1


BASE DE DATOS

Implementar procedimientos de validez de datos; por ejemplo, evitar la entrada de fechas


no vlidas.
Mantener los datos organizados, an si stos no se han cargado en la secuencia apropiada.
Proporcionar herramientas de bsqueda para encontrar rpidamente los datos deseados.

OFM puede utilizar tanto el motor de base de datos MS Access 97 como el motor de MS
Access 2000, para almacenar datos locales en un archivo de base de datos con extensin
*.mdb. Los proyectos creados en formato MS Access 97 son ledos por el motor de MS
Access 2000; sin embargo, los proyectos creados en formato MS Access 2000 no pueden ser
ledos por el motor de MS Access 97. Es recomendable construir todos los proyectos en la
misma versin de Access, en concordancia con la versin de de la que disponga el usuario.

La Figura 1 muestra un ejemplo de la forma en que se relacionan los datos en las tablas de
una base de datos relacional.

Clave Primaria

El motor de base de datos mantiene el enlace entre la tabla


principal y las tablas que utilizan el campo ID

Figura 1. Relaciones entre tablas de una base de datos relacional

2 OFM 2005 MANUAL DE REFERENCIA


BASE DE DATOS

Obsrvese que la columna ID en la tabla principal (Main Table) es el campo que identifica a
cada uno de los pozos, los cuales tienen propiedades estticas, es decir, que no cambian con el
tiempo (por ejemplo el nombre, ubicacin geogrfica, profundidad, fecha de completamiento,
etc.). En la tabla de la derecha se introducen datos dinmicos, como produccin de aceite
(OIL) y presin en cabeza de pozo (WHP). Ntese que en esta tabla se encuentra en primer
lugar el campo ID, el cual permitir relacionar tales datos con cada uno de los nombres de
pozo registrados en la tabla principal.

Como ya se dijo, el uso de claves primarias permite relacionar los datos entre las diferentes
tablas. En el ejemplo mostrado es posible revisar los datos de produccin de petrleo en la
tabla secundaria (campo OIL) y saber a qu pozo pertenecen por simple inspeccin de los
valores del campo ID, que es la clave primaria de la tabla principal. Cuando una clave
primaria es usada para relacionar dos tablas, recibe el nombre de clave fornea (foreign key)
en la tabla relacionada. En la tabla secundaria el campo ID no puede operar como clave
primaria, dado que sus valores se repiten en muchos registros o filas de datos; de hecho, en
esta tabla no existe ningn campo que pueda utilizarse como clave primaria. Sin embargo, la
combinacin de los campos ID y Date, es nica para cada registro (no puede haber en esta
tabla dos registros con la misma fecha para el mismo ID), y funciona perfectamente como
clave principal para esta tabla.

En trminos generales, cuando se construye una base de datos relacional se puede definir
cualquier nmero de tablas y establecer a gusto las relaciones entre ellas; cuando se usa OFM
no se tiene mucha libertad a este respecto, pero tampoco se debe hacer mucho trabajo, ya que
el motor de OFM automticamente define y mantiene todas las relaciones que se puedan
necesitar en su base de datos relacional particularizada, sin que el usuario deba preocuparse
por ello. La desventaja radica en que no se puede hacer cualquier cosa que se quiera en la
base de datos, sino que se deben seguir ciertas reglas y se deben tener en cuenta algunas
limitaciones (tipos de tablas, tipos de variables, keywords, etc.).

OFM 2005 MANUAL DE REFERENCIA 3


TIPOS DE INFORMACIN

2 TIPOS DE INFORMACIN

La informacin a cargar en la base de datos OFM se puede clasificar en tres categoras:

Informacin definida (Defined Data).


Informacin no definida (Non Defined Data).
Informacin de referencia (Reference Data).

La informacin definida requiere que se especifique la estructura de la tabla en la cual se va a


almacenar, antes de que pueda cargarse a la base de datos. Esta definicin puede hacerse
interactivamente a travs de la interfase grfica de usuario del OFM, o por medio de un
archivo de definicin en donde se especifica el tipo de tabla y todos los atributos de sus
variables (nombres de las variables, tipo de datos, unidades, formatos para reporte y para
grfica, etc.), lo cual se hace usando palabras claves (keywords) en una sintaxis preestablecida.

Para almacenar la informacin definida, el OFM maneja unos tipos de tabla preestablecidos,
que son una especie de modelos de tablas. Cada uno de estos tipos de tabla ha sido
optimizado para almacenar un tipo de informacin particular, y tiene predefinida la forma en
que la tabla se relacionar con otras tablas; el usuario mantiene el control sobre el resto de los
parmetros de la tabla, tales como nombres y tipos de datos de las columnas.

La informacin no definida en cambio se puede cargar directamente en la base de datos, en


tablas cuya estructura est preestablecida por el OFM y no puede ser modificada por el
usuario, de modo que no es necesario archivo de definicin para ellas. En la Tabla 1 se
presentan los tipos de informacin no definida que se manejan en la base de datos OFM.

Tanto la informacin definida como la no definida se puede cargar a la base de datos por
medio de archivos planos, o interactivamente usando la interfase del OFM. Se recomienda
que los archivos con informacin no definida utilicen la extensin de archivo correspondiente
relacionada en la tabla para que sean reconocidos de forma automtica al cargarlos al OFM.

4 OFM 2005 MANUAL DE REFERENCIA


TIPOS DE INFORMACIN

TIPO ARCHIVO DESCRIPCIN


Categoras de *.srt Las categoras de clasificacin se utilizan para crear subconjuntos de datos en
cualquier grupo significativo para su anlisis. Como ejemplos de categoras de
clasificacin
clasificacin se pueden mencionar: tipo de pozo, campo, bloque, regin,
(Sort) yacimiento, parcela, y operador.
Marcadores *.mrk Los nombres de los marcadores son datos definidos por el usuario, dependientes
de la profundidad, como por ejemplo los topes de las formaciones y los niveles de
(Markers)
fluido, que registran un valor a una profundidad dada para cada pozo. Los datos
de marcadores se utilizan para almacenar datos geolgicos como estratigrafa,
marcadores y buzamientos de variacin temporal, incluyendo los contactos agua-
petrleo, gas-agua y mltiples conjuntos de buzamientos.
Fallas *.flt Los datos de fallas contienen informacin sobre los atributos de las fallas, como la
profundidad y el desplazamiento. Los archivos de datos de fallas se utilizan para
(Fault)
almacenar datos geolgicos, datos de variacin temporal y diversos conjuntos de
datos relativos a las fallas. En cada proyecto se pueden incluir hasta un mximo
de 30 nombres de fallas.
Desviacin de pozos *.dev Una tabla de desviacin se carga como un archivo de datos plano y no se puede
crear o modificar dentro del programa OFM. Una vez cargado el archivo, los
(Deviation)
datos de desviacin quedan almacenados en la base de datos del proyecto OFM.
A diferencia de lo que ocurre con la mayora de las tablas de OFM, no se pueden
realizar informes o grficos sobre los datos de desviacin. Se utilizan para
calcular la profundidad medida con respecto a la profundidad vertical verdadera y
para desplegar pozos en el mapa base y en archivos de mapeo en la superficie, en
el fondo del pozo o en otros puntos a lo largo del estudio de desviacin.
Patrones de inyeccin *.pat Un patrn es un grupo de pozos de un rea que monitorea la cantidad de fluido
producido en una misma zona y la cantidad de fluido inyectado en dicha zona.
(Pattern)
Los datos de un patrn comprenden los nombres de los pozos con los factores de
distribucin para asignar un porcentaje del volumen inyectado a un grupo de pozos
productores o viceversa, es decir asignar un porcentaje de la produccin a un
grupo de inyectores. En cualquiera de los dos casos, una fraccin de los fluidos
producidos se asigna a cada pozo que tiene algn efecto sobre el productor.
Estados mecnicos *.wbd Los datos de estados mecnicos contienen configuraciones histricas almacenadas
por fechas y una descripcin de los intervalos estimulados, problemticos y con
(Wellbore Diagram)
extraccin de ncleos. Los archivos planos se cargan en la base de datos binaria
que contiene la lista de equipos del pozo; estos datos se utilizan para presentar los
diagramas de pozo y los intervalos caoneados en la visualizacin de registros y
de secciones transversales. Estos datos tambin pueden ser creados y modificados
en forma interactiva mediante un mdulo especfica del OFM; este dispositivo
posibilita que se mantenga una historia del pozo en OFM.
Variables calculadas *.par Los datos Parser contienen variables calculadas definidas por el usuario que
utilizan ecuaciones para realizar clculos sobre variables de entrada o sobre otras
(Parser)
variables calculadas.
Smbolos de pozo *.sym Los datos de smbolos de pozos definen el color y el smbolo utilizado para
representar las entidades en el mapa base.
(Well Symbol)
Anotaciones de mapa *.ano Las anotaciones de mapa contienen informacin grfica que se agrega al mapa
base para mejorar su presentacin, como contornos estructurales, fallas, vas y
(Map Annotations)
carreteras, ros, lmites de estados, etc. Requieren normas especficas para el
ingreso de los datos; se debe utilizar un archivo plano con comandos de dibujo y
modificadores. Cuando este archivo est incluido dentro de un proceso de carga,
se despliega al abrir el mapa base y se accede al mismo en forma automtica. El
OFM almacena el nombre del archivo correspondiente a la anotacin y la
ubicacin del directorio dentro de la base de datos; cada vez que se abre un
proyecto y se reconstruye la pantalla, OFM lee estos archivos. (Estas anotaciones
de mapas no deben confundirse con las anotaciones de pozos de los grficos).

Tabla 1. Tipos de informacin no definida

OFM 2005 MANUAL DE REFERENCIA 5


TIPOS DE INFORMACIN

Existe otro tipo de informacin que es usada de forma automtica por el OFM y se conoce
como informacin de referencia (Reference Data). Entre este tipo de informacin se
encuentran: unidades, factores de conversin, multiplicadores y colores. La informacin de
referencia no se carga pero puede ser modificada por el usuario.

6 OFM 2005 MANUAL DE REFERENCIA


TABLAS

3 TIPOS DE TABLAS PARA INFORMACIN DEFINIDA

Los tipos de tabla para informacin definida son los siguientes:

Tablas Estticas (Static).


Tablas Peridicas (Monthly, Daily).
Tablas Espordicas (Sporadic).
Tablas de Referencia Cruzada (Xref).
Tablas de Bsqueda (Lookup).
Tablas Trace.

Dentro de un mismo proyecto es posible definir varias tablas de cada uno de estos tipos. A
continuacin se describen las caractersticas y usos de cada tipo de tabla.

3.1 TABLAS ESTTICAS

Los datos estticos dependen de una entidad y se registran una sola vez en la vida de la
entidad. Como ejemplos se pueden mencionar los datos de ubicacin, la fecha de
completamiento, la presin original, la profundidad total, la porosidad, y la ubicacin.

La tabla Esttica Maestra (Static Master) es la tabla principal de la base de datos, a la cual
estn relacionados casi todos los datos. El usuario puede definir solamente una tabla maestra
y, como cualquier tabla esttica, ella contiene datos que no cambian. Esta es la tabla donde el
usuario carga los objetos o entidades que desea analizar dentro del proyecto (pozos,
completamientos, etc.). Cada objeto de esta tabla es almacenado en un registro y ser
graficado en el mapa base con un smbolo; las coordenadas d superficie de cada uno de estos
objetos tambin estn almacenadas en esta tabla.

La estructura de la tabla esttica maestra debe cumplir ciertos requisitos:

OFM 2005 MANUAL DE REFERENCIA 7


TABLAS

La clave primaria de la tabla maestra siempre es la primera columna que se define, y debe
contener datos de tipo alfanumrico. Normalmente se denomina UNIQUEID o UID
(todas las tablas estticas que se definan en el proyecto estarn relacionadas a la tabla
maestra a travs de la clave primaria de la base de datos).
Deben incluirse variables para las coordenadas de ubicacin del pozo en el mapa base.
Aqu se cargan las coordenadas de superficie; en caso de que existan pozos desviados y
para algn anlisis particular se requieran las coordenadas a otras profundidades, debe
cargarse el archivo de desviacin en la tabla correspondiente, y configurar la visualizacin
del mapa base para que tenga en cuenta dicha desviacin.
Es recomendable que se incluyan variables para manejar el Alias, o nombre resumido de
cada entidad, y el nombre del pozo (normalmente se usa WELLBORE) al que pertenece
la entidad. Cuando las entidades bsicas del proyecto son pozos y no completamientos, los
valores de UNIQUEID y WELLBORE de cada entidad son iguales.
Aunque no es indispensable, es recomendable que se incluyan variables para manejar la
profundidad total y una profundidad de referencia. La profundidad de referencia es usada
para manejar y desplegar adecuadamente los datos dependientes de la profundidad
(registros, desviaciones, estados mecnicos).

3.2 TABLAS PERIDICAS

Estas tablas almacenan valores que cambian con el tiempo, y que pertenecen a las entidades
contenidas en la tabla maestra. Las tablas mensuales (Monthly) permiten almacenar un nico
valor por mes; las tablas diarias (Daily) son equivalentes a las mensuales, slo que permiten
almacenar un nico valor por da. La clave primaria de estas tablas se compone de dos
columnas: la primera columna corresponde a la clave primaria de la tabla maestra, y la
segunda columna corresponde al campo de fecha (Date). Cuando el usuario define una de
estas tablas, OFM agrega automticamente la clave primaria de la tabla maestra y la columna
de fecha, y establece la relacin con la tabla maestra.

8 OFM 2005 MANUAL DE REFERENCIA


TABLAS

3.3 TABLAS ESPORDICAS

Una tabla espordica (Sporadic) permite almacenar valores que se generan ocasionalmente.
Estos valores pueden ser espordicos en el tiempo o con la profundidad, por ejemplo, datos de
pruebas (espordicos en el tiempo) o datos de corazones (espordicos en profundidad). Para
este tipo de tablas, OFM no define completamente la clave primaria; la primera columna que
se debe definir es la que ser combinada con la clave primaria de la tabla maestra para generar
la clave primaria (ID + DATE ID + DEPTH).

En este punto aparece un interrogante vlido: Si es posible almacenar valores con cualquier
frecuencia de tiempo, porqu se deben utilizar tablas mensuales o diarias, cuando se tiene
mucha ms flexibilidad con tablas espordicas?. La respuesta no es muy clara con lo expuesto
hasta ahora, pero tiene que ver con el hecho de que los datos espordicos no pueden ser
agrupados. Si se colocan los datos de produccin en una tabla espordica, slo ser posible
reportarlos para una entidad a la vez; no se podrn reportar los datos para un grupo de pozos,
ni siquiera para un grupo de completamientos que pertenecen al mismo pozo; esto debido a
que para sumar valores, estos tienen que corresponder exactamente a una misma fecha, cosa
que no se puede garantizar con tablas espordicas.

3.4 TABLAS DE REFERENCIA CRUZADA Y TABLAS DE BSQUEDA

Una tabla de referencia cruzada almacena datos estticos de entidades que no necesariamente
corresponden a las entidades de la tabla primaria; estos datos pueden ser numricos o
alfanumricos. Como ejemplo se puede citar la tabla de promedios de propiedades
petrofsicas de los diferentes yacimientos de un campo (ver Tabla 2).

Los datos de referencia cruzada se asemejan a los datos estticos, salvo que stos ltimos estn
ligados a la clave primaria de la base de datos, mientras que los datos de referencia cruzada
pueden estar ligados a una variable de clasificacin (lo usual), a cualquier otra cosa, o a
ningn elemento en particular.

OFM 2005 MANUAL DE REFERENCIA 9


TABLAS

*FU *NETPAY *SWI *PHI *PERM *KH *NTG


A-NORTE 45,7143 0,8765 0,1754 122,5643 6235,6814 0,3048
A-CENTRO 40,8696 0,9457 0,1796 119,1122 4510,1389 0,2844
A-SUR 53,2667 0,9290 0,1902 169,2773 9028,3443 0,3664
B-NORTE 38,5000 0,9055 0,1684 137,8075 3715,5275 0,1854
B-CENTRO 45,2778 0,9284 0,1766 101,7900 4394,8350 0,2569
B-SUR 45,2778 0,9284 0,1766 101,7900 4394,8350 0,2569

Tabla 2. Ejemplo de tabla de referencia cruzada

Para acceder a los datos almacenados en tablas de referencia cruzada se usan las siguientes
funciones del sistema (en reportes o en variables calculadas):

@XrefValue (expression, XRefTable.keyword)


@XrefAlpha (expression, XRefTable.keyword)

En la sintaxis de estas funciones, el trmino expression hace referencia a un elemento


numrico o alfabtico especfico de los incluidos en la primera columna de la tabla (columna o
variable de referencia), y el trmino keyword identifica la columna de donde @XRefValue
leer el valor numrico, o @XRefAlpha leer la cadena alfanumrica, en la tabla XRefTable,
en la misma fila donde se encuentra el valor indicado en expression.

Por su parte, una tabla de bsqueda almacena datos numricos (no se permiten alfanumricos)
que son especficos de entidades que no necesariamente corresponden a las entidades de la
tabla primaria, y que cambian a lo largo del tiempo, o con respecto de cualquier otra variable.

De forma anloga a como los datos de referencia cruzada se asemejan a los datos estticos, los
datos de bsqueda se asemejan a los datos espordicos, con la misma salvedad de que los
datos espordicos estn ligados a la clave primaria de la base de datos, mientras que los datos
de bsqueda pueden estar ligados a una variable de clasificacin (lo usual), a cualquier otra
variable o a ningn elemento en particular.

El tema de las funciones del sistema es tratado en una seccin posterior en este documento.

10 OFM 2005 MANUAL DE REFERENCIA


TABLAS

Las siguientes propiedades se pueden manejar en OFM con el uso de tablas de bsqueda:

Propiedades dependientes de la fecha.


Propiedades dependientes de la profundidad.
Datos de permeabilidad relativa (dependientes de la saturacin de agua).
Perfiles de presin.
Precios del petrleo y del gas (dependientes de la fecha).
Propiedades PVT (dependientes de la presin) (ver Tabla 3).

*PRESSURE *BO *OILVIS *RS


*KEYNAME PVT_A
0 1,0165 62,0000 0,0000
200 1,0394 40,0000 27,4416
475 1,0499 30,4875 60,1400
730 1,0597 25,6550 89,2400
1000 1,0712 22,5000 118,9220
1400 1,0836 20,5000 160,0916
2000 1,0941 20,2000 194,0000
2500 1,0930 21,3000 194,0000
3500 1,0877 24,9000 194,0000
4500 1,0804 28,0000 194,0000
*KEYNAME PVT_B
0 1,0200 0,0000
300 1,0760 97,0000
665 1,0820 119,0000
800 1,0812 119,0000
1000 1,0802 119,0000
1500 1,0775 119,0000
2500 1,0722 119,0000
3500 1,0670 119,0000
4500 1,0623 119,0000

Tabla 3. Ejemplo de tabla de bsqueda

Para acceder a los datos almacenados en tablas de bsqueda se utiliza la siguiente funcin:

@Lookup (LookupTable.keyword, keyname, value, option).

En esta sintaxis, el trmino keyname hace referencia al nombre de un conjunto de datos en la


tabla LookupTable, value hace referencia al valor con el que se realizar la bsqueda en la

OFM 2005 MANUAL DE REFERENCIA 11


TABLAS

primera columna de la tabla (columna o variable de bsqueda), y keyword identifica la


columna de donde se leer o interpolar el valor numrico, segn lo especificado en option:

date Si la variable x corresponde a una fecha.


xlog Realiza la bsqueda a lo largo del eje x.
ylog Realiza la bsqueda a lo largo del eje y.
linear Realiza interpolacin lineal.
lag Realiza interpolacin de Lagrange.
deg Especifica el grado del polinomio de Lagrange.
step up Realiza una bsqueda y devuelve el valor superior.
step down Realiza una bsqueda y devuelve el valor inferior.
in El valor debe existir dentro de un rango determinado (No extrapolar).

Las diferencias ms importantes entre las tablas de referencia cruzada y las de bsqueda, son
que en las primeras se pueden almacenar datos numricos y alfanumricos, y en las otras slo
numricos, y que en las de referencia cruzada no se puede interpolar, y en las de bsqueda s.

3.5 TABLAS TIPO TRACE

Estas tablas estn diseadas para almacenar curvas de registros de pozo, es decir, datos que
pertenecen a un pozo y que cambian con la profundidad. Debe tenerse en cuenta que OFM
slo define una clave fornea para este tipo de tablas; OFM no crea automticamente la
primera columna (DEPTH), la cual es obligatoria; el usuario debe definirla manualmente.

3.6 TABLA DE VARIABLES DE CLASIFICACIN (SORT CATEGORY - SC)

Los datos de clasificacin se consideran como informacin no definida porque en las


versiones anteriores el OFM creaba automticamente la tabla donde se almacenaban (SC) sin
tener que definirla previamente; sin embargo, era el usuario quien defina las columnas de la

12 OFM 2005 MANUAL DE REFERENCIA


TABLAS

tabla (las variables de clasificacin) antes del encabezado de la tabla con los datos en un
bloque encerrado entre los keywords *define y *end_define.

Slo se poda tener una nica tabla de variables de clasificacin por proyecto, y esta poda
tener hasta cincuenta variables. Esta tabla era usada por el OFM para categorizar las entidades
cargadas en la base de datos y para tener una forma rpida de filtrarlas. All se guardaban
normalmente datos como el tipo de entidad, o la regin PVT correspondiente a la entidad (por
medio de la primera se configura el smbolo a usar para cada entidad en el mapa base, y la
segunda permite determinar a travs de una tabla de bsqueda los datos PVT correspondientes
a cada entidad).

La tabla de variables de clasificacin era en realidad una extensin de la tabla esttica maestra.
En las versiones ms recientes el OFM permite establecer como categora de seleccin
cualquier variable de las tablas estticas definidas en el proyecto, incluyendo la tabla esttica
maestra, con lo cual ya no es necesario el uso de la tabla SC tal como se manejaba en las
versiones anteriores.

3.7 RELACIONES ENTRE LAS TABLAS DE UN PROYECTO OFM

Casi todos los datos que se pueden manejar en un proyecto OFM pertenecen a alguna entidad
de diferente nivel; los datos de produccin pertenecen a un completamiento o a un pozo, los
datos de registros pertenecen a un pozo, los datos de PVT y/o permeabilidades relativas
pertenecen a una unidad de flujo.

En la base de datos OFM los datos almacenados en tablas estticas, peridicas, y espordicas,
corresponden a las entidades bsicas definidas en la tabla maestra (normalmente
completamientos), y los datos almacenados en las tablas de desviacin, marcadores, fallas,
estados mecnicos y registros, corresponden a entidades de nivel de pozo.

Es preferible usar como categoras de seleccin o clasificacin slo variables alfanumricas o numricas de tipo entero, ya que se pueden
obtener resultados inesperados si se utilizan datos con decimales debido a que no se tiene control sobre el redondeo.

OFM 2005 MANUAL DE REFERENCIA 13


TABLAS

La Figura 2 resume la mayora de los tipos de tabla mencionados anteriormente y la manera


en que ellas se relacionan con la tabla esttica maestra.

Figura 2. Relaciones entre tablas de un proyecto OFM

En el ejemplo de la figura, la clave principal de la tabla maestra es la columna Layer y a


travs de ella se relacionan con sta las tablas estticas, peridicas, espordicas, y de
categoras de clasificacin. As mismo, la variable que define el pozo al que pertenece cada
entidad en la tabla maestra es la columna Well, y a travs de ella se relacionan las tablas de
desviacin, estados mecnicos y registros. Las tablas de referencia cruzada y de bsqueda, en
cambio, no estn relacionadas directamente con ninguna otra tabla; para asociar estos datos
normalmente se usan variables de clasificacin y las respectivas funciones del sistema antes
vistas.

14 OFM 2005 MANUAL DE REFERENCIA


VARIABLES

4 TIPOS DE VARIABLES EN OFM

Una variable en OFM es una unidad de datos que tiene un nombre y que almacena un valor
(un nmero, una cadena alfanumrica, etc.). En OFM no se usa el trmino columna para
referirse a un valor; no se habla de la columna Oil en la tabla MonthlyProd, sino de la
variable de entrada MonthlyProd.Oil. La mayora de las variables no tienen un nico valor,
sino que son indexadas, sus valores cambian con relacin a al menos un ndice externo; el
valor de Oil cambia con respecto al pozo y a la fecha, y sin embargo el nombre de la variable
es slo uno: MonthlyProd.Oil.

OFM maneja tres clases de variables:

Variables de entrada (Input variables).


Variables calculadas (Calculated variables).
Variables atribuidas (Imputed variables).

4.1 VARIABLES DE ENTRADA

Las variables de entrada se crean en el momento en que se definen las tablas; ms


especficamente son las columnas de las tablas. En OFM los nombres de estas variables estn
compuestos por el nombre de la tabla donde estn contenidas, seguido de un punto y del
nombre de la columna a la cual se hace referencia. Las variables de entrada utilizan la
informacin tal como fue cargada, para generar reportes, grficas, mapas, etc.; los datos de
estas variables permanecen siempre cargados en las tablas de la base de datos.

4.2 VARIABLES CALCULADAS

Estas son variables para las que el usuario define completamente el nombre y la frmula que
utilizan, y permiten hacer prcticamente cualquier tipo de clculo. En las frmulas de las

OFM 2005 MANUAL DE REFERENCIA 15


VARIABLES

variables calculadas se pueden utilizar constantes, operadores simples, otras variables de


cualquier clase (incluso otras variables calculadas), y funciones del sistema. Tambin se
pueden utilizar funciones definidas por el usuario (funciones codificadas por el usuario en un
lenguaje especial de programacin).

Cuando se requiere un valor que es el resultado de una operacin matemtica que involucra
otros datos ya cargados, no es necesario calcularlo externamente para luego cargarlo, sino que
se determina a partir de una variable en OFM que desarrolle el clculo. Las variables
calculadas son bsicamente ecuaciones, slo ocupan en la base de datos el espacio que
necesita la definicin (unos pocos bytes), y se calculan por demanda cuando son requeridas.

Debido a que estas variables no estn relacionadas a tablas, se les puede asignar cualquier
nombre; sin embargo, es recomendable manejar unas convenciones en la nomenclatura, ya que
se pueden llegar a tener decenas (incluso cientos) de variables calculadas, y fcilmente el
usuario puede llegar a tener confusiones con relacin a lo que realmente hace cada una.

El OFM no maneja variables calculadas predefinidas; ellas deben ser definidas por el usuario
para cada proyecto que se construya. No obstante, existen algunos trucos y herramientas (por
ejemplo, el archivo CVBuilder.xls en la carpeta OFMPlus, ubicada en el directorio de
instalacin del OFM) para crear rpidamente un conjunto con las variables ms populares.

4.3 VARIABLES ATRIBUIDAS

Estas son variables calculadas que se definen como parte de las tablas de entrada, y aunque
lucen como cualquier otra variable de entrada, en ellas no se cargan datos, sino que su valor es
el resultado de un clculo simple. Cada vez que se necesitan los datos, OFM hace el clculo
determinado por la ecuacin respectiva y los publica en la tabla donde estn definidas las
variables, de modo que estn disponibles en todo momento. La sintaxis del nombre de estas
variables es la misma que para las variables de entrada.

16 OFM 2005 MANUAL DE REFERENCIA


VARIABLES

Hay algunas restricciones sobre estas variables: las matemticas son muy limitadas (los 4
operadores bsicos y muy pocas funciones) y los nicos elementos que se pueden utilizar para
construir la ecuacin son valores constantes y las variables de entrada pertenecientes a la
misma tabla donde se define la variable atribuida.

La principal diferencia entre las variables calculadas y las variables atribuidas (adems del
hecho de que las atribuidas solo pueden realizar clculos muy simples mientras que las
calculadas son extremadamente poderosas y pueden realizar prcticamente cualquier clculo),
est ntimamente relacionada con el procedimiento de OFM de agrupar entidades, y radica en
cuando es calculada realmente la ecuacin: las variables calculadas aplican la ecuacin sobre
los valores del grupo, es decir, despus de que los datos han sido agrupados (primero se
agrupa y despus se aplica la ecuacin), mientras que las variables atribuidas aplican la
ecuacin sobre los valores de cada entidad primaria, es decir, antes de que los datos sean
agrupados (primero se aplica la ecuacin y despus se agrupa).

El procedimiento de agrupar es bsico y de uso muy frecuente en las operaciones de OFM. Prcticamente no se puede hacer nada sin antes
agrupar adecuadamente los datos deseados.

OFM 2005 MANUAL DE REFERENCIA 17


FUNCIONES

5 FUNCIONES DEL SISTEMA DE OFM

Las funciones del sistema comprenden una serie de instrucciones codificadas que retoman
informacin de OFM y devuelven resultados; permiten realizar operaciones estndar dentro
del OFM, tales como realizar clculos, recuperar informacin contenida en la base de datos y
ejecutar tareas de formateo de datos. Hay funciones matemticas, estadsticas, de acceso a
base de datos, de formato para nombres y fechas, de manipulacin de archivos, e incluso
funciones para calcular propiedades de aceite, gas y agua a partir de correlaciones.

Cada funcin tiene un nombre y una sintaxis especficos (se identifican con el smbolo @), y
realiza una operacin determinada utilizando los argumentos definidos entre parntesis; el tipo
de argumentos necesarios depende del propsito de la funcin. La expresin de una funcin
del sistema puede estar formada por cualquier combinacin de constantes, variables de entrada
y variables calculadas incluidas en la base de datos del proyecto, y otras funciones. Algunas
funciones se aplican slo a variables de entrada, mientras que otras son aplicables a cualquier
expresin. Las funciones del sistema se utilizan en variables calculadas, funciones del
usuario, informes, consultas, encabezados, y definiciones de archivos de mapeo.

En las funciones del sistema radica la fuerza y la flexibilidad del software OFM, y puede
decirse que la habilidad en el uso de las mismas (ms an que el buen manejo de la interfase),
es lo que caracteriza al usuario avanzado. La forma ms natural y eficiente de aprender acerca
de estas funciones es mediante su uso a medida que se van necesitando, pero se puede
empezar por efectuar un repaso general de todas las funciones disponibles para tener una idea
de todo lo que se puede hacer con ellas. Teniendo en cuenta lo extenso del tema, no se incluye
aqu documentacin acerca del uso, la funcionalidad, los argumentos y la sintaxis de cada una
de las funciones del sistema de OFM; esta informacin puede consultarse en la ayuda
interactiva del software, donde se explica cada funcin en forma detallada y con ejemplos.

OFM provee un amplio conjunto de ms de 250 funciones de sistema (el nmero aumenta con
cada nueva versin del software), las cuales estn agrupadas en categoras:

18 OFM 2005 MANUAL DE REFERENCIA


FUNCIONES

Funciones de fecha.
Funciones de ingeniera.
Funciones de finanzas.
Funciones de formateo.
Funciones de anlisis de registros.
Funciones de lgica.
Funciones matemticas.
Funciones miscelneas.
Funciones de graficacin.
Funciones de procedimientos.
Funciones PVT.
Funciones estadsticas.
Funciones de manipulacin de caracteres.
Funciones de tabulacin.

5.1 REGLAS PARA LA UTILIZACIN DE LAS FUNCIONES DEL SISTEMA

Puesto que las funciones de sistema interactan con el motor de base de datos del OFM, para
que operen correctamente deben tenerse en cuenta ciertas reglas al momento de usarlas.

Maysculas y minsculas.

La nomenclatura de las funciones de sistema no es sensible a la utilizacin de letras


maysculas, es decir, tanto el nombre de las funciones como el de las variables pueden
escribirse indiscriminadamente con o sin maysculas. Por ejemplo, las siguientes expresiones
son equivalentes:

@StdDev(monthlyprod.oil)
@STDDEV(MONTHLYPROD.OIL)

OFM 2005 MANUAL DE REFERENCIA 19


FUNCIONES

Espacios en blanco.

Los espacios en blanco antes y despus de las expresiones son ignorados por OFM. Por
ejemplo, las siguientes expresiones son equivalentes:

@StdDev(MonthlyProd.Oil)
@StdDev (MonthlyProd.Oil)
@StdDev( MonthlyProd.Oil)

Sin embargo, los espacios en blanco dentro de la expresin pueden ser causa de errores y
resultados poco confiables. Por ejemplo:

@Std Dev(MonthlyProd.Oil)
@StdDev(MonthlyProd. Oil)

5.2 USO DE FECHAS EN LAS FUNCIONES DEL SISTEMA

OFM evala las fechas como nmeros en el formato yyyymmdd (por ejemplo: 20050421
corresponde al 21 de abril de 2005); de modo que en la sintaxis de las funciones del sistema,
se debe tener claro cuando se est manejando un dato de fecha, y cuando un nmero:

Expresin correcta Expresin incorrecta

@ElapsedDays(20020330,20020101) 20020330 - 20020101


@Year(Date)>2002 Date>2002
@Between(@Year(Date), 2001,2002) @Between(Date, 2001,2002)

De otra parte, para el manejo de la presentacin de los datos de fecha, la funcin


@FmtDate(value, string) permite desplegar la fecha en distintos formatos:

20 OFM 2005 MANUAL DE REFERENCIA


FUNCIONES

Fecha cargada Formato Resultado


20050421 Mmm dd, yyyy Abr 21, 2005
20050421 dd Mmm yy 21 Abr 05
20050421 dd-mm-yy 21-04-05

5.3 NOMENCLATURA DE LAS FUNCIONES DEL SISTEMA

Las siguientes convenciones se aplican para entender la sintaxis de las funciones del sistema:

Si el argumento de una funcin aparece en forma de parntesis sin contenido, significa que
no es necesario incluir ningn argumento. Por ejemplo: @LoadName( ), @Date( ).
El trmino value, utilizado como nombre genrico para un argumento, indica que este
argumento es de tipo numrico y es obligatorio colocarlo en la funcin.
El trmino string, utilizado como nombre genrico para un argumento, indica que este
argumento es una cadena de caracteres y es obligatorio colocarlo en la funcin escrito
entre comillas ( ).
El trmino expression se refiere a valores numricos presentados en forma explcita (por
ejemplo: 2500, 18.5). Tambin se puede referir a valores numricos dados a travs de
nombres de variables (por ejemplo: MonthlyProd.Oil, Ratio.WOR).
No es posible efectuar manipulaciones algebraicas sobre una cadena de argumentos, salvo
para comparar, conectar o eliminar caracteres.
El trmino condition se refiere a expresiones lgicas que al ser evaluadas devuelven un
resultado de verdadero o falso, el cual incide sobre el resultado final de la funcin.
El trmino optional se usa para especificar que el argumento al que se hace referencia se
puede omitir sin que se produzcan errores al momento de evaluar la funcin.
El trmino option se usa para indicar que el valor del argumento debe ser escogido de una
serie de opciones predefinidas.

OFM 2005 MANUAL DE REFERENCIA 21


FUNCIONES

5.4 FUNCIONES DEFINIDAS POR EL USUARIO

En caso de que el usuario desee realizar un manejo particular de los datos en el proyecto, y no
pueda hacerlo con las funciones del sistema, el OFM le permite escribir y ejecutar sus propios
programas, los cuales se conocen como funciones de usuario. (User Functions). Estas
funciones son procedimiento escritos por el usuario, que al igual que las funciones del sistema,
desarrollan operaciones sobre los datos cargados en el proyecto y devuelven resultados;
pueden utilizar variables, funciones del sistema, e incluso otras funciones de usuario. La
programacin de funciones de usuario es un tema avanzado y est fuera del alcance de este
documento; se puede encontrar documentacin al respecto en la ayuda interactiva del OFM.

22 OFM 2005 MANUAL DE REFERENCIA


ARCHIVOS ASCII

6 ARCHIVOS PLANOS EN FORMATO OFM

Aunque el OFM permite realizar de forma interactiva (mediante la interfase grfica de


usuario) las dos tareas bsicas en la construccin de un proyecto OFM (crear las tablas y
poblarlas con datos), la forma ms prctica de hacerlo, y de uso ms extendido es mediante la
importacin de archivos planos ASCII en formatos especficos de OFM. En estos archivos,
por medio de palabras claves reservadas (keywords) y una sintaxis predefinida, se lleva la
informacin al software y ste la interpreta de la misma forma que lo hace cuando es
introducida desde la interfase grfica de usuario.

Como herramienta para el cargue de datos al OFM, es necesario de un editor de texto que sea
capaz de manejar archivos ASCII de gran tamao, y familiarizarse con su uso. Los archivos
ASCII, en general, presentan las siguientes caractersticas:

Pueden ser ledos por cualquier computador.


Pueden ser vistos y editados por la mayora de los editores disponibles en el mercado.
Pueden ser creados de alguna forma por la mayora de los programas comerciales.

Se recomienda que los nombres de los archivos planos a cargar en OFM utilicen la extensin
predeterminada para que sean reconocidos de forma automtica por la interfase de carga. La
siguiente es la lista de extensiones predeterminadas para archivos planos:

*.ano Anotacin (para mapa) *.par Variables calculadas


*.def Definicin *.pat Patrones de inyeccin
*.dev Desviacin *.srt Clasificacin
*.flt Fallas *.sym Smbolos de pozos
*.log Registros *.xy Tabla primaria
*.mrk Marcadores *.wbd Estados mecnicos
*.not Anotaciones (para grfica) *.dca Pronsticos

Cdigo Estndar Americano de Intercambio de Informacin, ASCII por sus iniciales en ingls.

OFM 2005 MANUAL DE REFERENCIA 23


ARCHIVOS ASCII

Los archivos ASCII no deben eliminarse, ya que sirven como documentacin para la base de
datos; adems, pueden ser requeridos para reconstruir una base de datos perdida y pueden
utilizarse en otros programas o en proyectos OFM para otras aplicaciones. De cualquier
forma, en caso de que estos archivos se pierdan, el OFM cuenta con un mdulo de exportacin
que permite crearlos a partir de la informacin cargada en la base de datos. Debe tenerse en
cuenta que una vez cargados los archivos al proyecto, el OFM no mantiene ningn vnculo con
ellos (excepto los archivos de anotaciones de mapa), y cualquier modificacin posterior en los
archivos no se ver reflejada en los datos almacenados en el proyecto.

En OFM se manejan archivos planos ASCII de diferente propsito y con diferente formato:

Archivos de definicin de tablas (*.def).


Archivos de definicin de variables calculadas (*.par).
Archivos de datos (mltiples extensiones).

6.1 ARCHIVOS DE DEFINICIN DE TABLAS

En estos archivos se define completamente la estructura de las tablas que constituirn el


proyecto OFM. Aqu se especifica el nombre y el tipo de cada tabla, y el nombre, el tipo de
datos, y los atributos completos de cada una de las variables. Las siguientes convenciones se
aplican a los archivos de definicin de tablas:

La extensin recomendada para el nombre del archivo es *.def.


Se puede usar un mximo de 1024 caracteres por lnea.
Todas las tablas del proyecto pueden ser definidas en un nico archivo de definicin, o se
pueden crear varios archivos pequeos con diferentes tablas en cada uno.
Todas las tablas deben tener un nombre, y el nombre de cada tabla debe ser nico dentro
de cada proyecto.
La primera tabla que se define en el proyecto es la tabla Esttica Maestra. Si la definicin
de las tablas se hace en un archivo de definicin nico, la primera tabla en l debe ser la

24 OFM 2005 MANUAL DE REFERENCIA


ARCHIVOS ASCII

tabla maestra; si se manejan varios archivos, el primero que se debe cargar es el que
contiene la definicin de la tabla maestra, y sta debe ser la primera tabla en dicho archivo.
la primera variable definida en la tabla maestra es el identificador nico de las entidades, y
constituye la Clave Primaria del proyecto. Esta variable debe ser de tipo alfanumrico.
No existe un nombre predefinido para la clave primaria; un keyword se convierte en clave
primaria cuando se usa como nombre de la primera variable de la tabla maestra.
Dentro de un mismo proyecto puede repetirse un nombre de variable en diferentes tablas,
pero no dentro de una misma tabla.
Las palabras clave (keywords) que se asignan como nombres de las variables, adems de
letras maysculas, minsculas y dgitos, pueden incluir los siguientes caracteres:

: ; $ # % _

La siguiente es una lista de palabras clave reservadas de OFM, las cuales no pueden ser
usadas como nombres de variables:

*DateLabel *End_Define *KeyName *Quiet


*Day *End_Format *Metric *ReadOff
*DD *EOF *MM *ReadOn
*DDMMYY *Format *MMYYDD *Skip
*Define *KeyLength *Month *Tablename
*YYMM *KeyLimit *Null *Year

En general, es recomendable tener el cuidado de no usar ninguna de las palabras claves


reservadas de OFM como nombre de variable.
Las palabras clave, tanto las reservadas como las que representan los nombres de las
variables, no diferencian entre maysculas y minsculas.
Una vez que un archivo de definicin ha sido y cargado no puede ser modificado para
cargarlo de nuevo; los cambios en las tablas ya definidas se hacen interactivamente, y las
tablas nuevas se cargan en archivos de definicin nuevos que contengan slo estas tablas.

A continuacin se presentarn un par de ejemplos de archivos de definicin, con el fin de


explicar en detalle otras convenciones relacionadas con la sintaxis y las palabras clave
reservadas, adems de ciertas reglas que se deben seguir al momento de crear estos archivos.

OFM 2005 MANUAL DE REFERENCIA 25


ARCHIVOS ASCII

El primero es un ejemplo de la definicin de una tabla esttica maestra en un archivo ASCII:

*TABLENAME HEADERID Static Master


// TABLA PRINCIPAL DEL PROYECTO
UNIQUEID String 25
// ESTE NOMBRE ESTA COMPUESTO POR EL CODIGO DEL POZO,
// DOS PUNTOS ":" Y EL CODIGO DE LA FORMACION
*rh "HEADERID" "" "UNIQUEID"
*rf 25 0 "Left"
XCOOR Double
// COORDENADA X DEL POZO CON RESPECTO AL PUNTO DE ORIGEN ESCOGIDO
*rh "HEADERID" "" "XCOOR"
*rf 12 2 "Right"
*pn "HEADERID.XCOOR"
*pa "Black" "Solid" "None" 0 0
*u "ft" "m"
*ma "No" "Arithmetic"
YCOOR Double
// COORDENADA Y DEL POZO CON RESPECTO AL PUNTO DE ORIGEN ESCOGIDO
*rh "HEADERID" "" "YCOOR"
*rf 12 2 "Right"
*pn "HEADERID.YCOOR"
*pa "Black" "Solid" "None" 0 0
*u "ft" "m"
*ma "No" "Arithmetic"
ALIAS String 20
// CORRESPONDE AL NOMBRE CON EL QUE SE CONOCE AL POZO DENTRO DEL CAMPO
*rh "HEADERID" "" "ALIAS"
*rf 10 0 "Left"
WELLBORE String 20
// NOMBRE COMPLETO DEL POZO
*rh "HEADERID" "" "WELLBORE"
*rf 12 0 "Left"
CDATE Date
// FECHA DE COMPLETAMIENTO DEL POZO
*rh "HEADERID" "" "CDATE"
*rf 10 0 "Right"
*u "Date" "Date"
KBELEV Double
// ELEVACIN DE LA MESA ROTARIA CON RESPECTO AL NIVEL DEL MAR
*rh "HEADERID" "" "KBELEV"
*rf 10 2 "Right"
*pn "HEADERID.KBELEV"
*pa "Black" "Solid" "None" 2 2
*u "ft" "m"
*ma "No" "Arithmetic"
TDEPTH Double
// PROFUNDIDAD TOTAL MEDIDA DE PERFORACION DEL POZO
*rh "HEADERID" "" "TDEPTH"
*rf 10 2 "Right"
*pn "HEADERID.TDEPTH"
*pa "Black" "Solid" "None" 2 2
*u "ft" "m"
*ma "No" "Arithmetic"
TOPFORM Double
// PROFUNDIDAD DEL TOPE DE LA FORMACION PRODUCTORA
// EN PROFUNDIDAD MEDIDA CON RESPECTO A LA MESA ROTARIA
*rh "HEADERID" "" "TOPFORM"
*rf 10 2 "Right"
*pn "HEADERID.TOPFORM"
*pa "DarkRed" "Solid" "None" 2 2
*u "ft" "m"
*ma "No" "Arithmetic"

En este ejemplo se pueden destacar varias cosas:

26 OFM 2005 MANUAL DE REFERENCIA


ARCHIVOS ASCII

Se pueden incrustar comentarios en el archivo, precedidos del smbolo // o /*; estos


comentarios son ignorados por el OFM al momento de cargar el archivo.
Para definir una tabla se usa la palabra clave *TABLENAME, seguida del nombre que se
va a asignar a la tabla, y del cdigo que indica el tipo de tabla (Static, Monthly, Daily,
Sporadic, XRef, LookUp, Trace). La tabla maestra se especifica como Static Master.
Las variables se definen especificando el nombre y el tipo de datos que almacenan:

Tipo Descripcin Rango


Int1 Entero de 1 byte -128 a 127
Int2 o Int Entero de 2 bytes -32.768 a 32.767
Int4 o Long Entero de 4 bytes -2.147.483.648 a
2.147.483.647
Uint1 Entero de 1 byte sin signo 0 a 255
Uint2 Entero de 2 bytes sin signo 0 a 65.536
Uint4 Entero de 4 bytes sin signo
Date Fecha
Float Nmero decimal con 7 dgitos de precisin
Double Nmero decimal con 19 dgitos de precisin
String n Datos alfanumricos, n especifica el largo
mximo permitido para la cadena (0 a 256)

Despus de definir cada variable, y antes de definir la siguiente, se introducen los atributos
completos de la misma por medio de palabras claves de uso especfico:

*rh Encabezado de reporte (tres lneas de caracteres). El texto


(report header) introducido en cada lnea de encabezado est limitado al nmero
de caracteres especificado en el ancho de campo
*rf Formato de reporte (nmero de dgitos para el ancho de campo,
(report format) posiciones decimales, justificacin).
*pn Nombre para identificar la variable en leyendas de grficas y
(plot name) mapas.
*pa Atributos para grficas (Color, tipo de lnea, tipo de punto,
(plot atributes) tamao de punto, ancho de lnea).
*u Unidades (sistema ingles, sistema mtrico).
(units)
*mu Multiplicadores (para entrada de datos, para salida de datos).
(multipliers)
*ma Opciones matemticas (usar factor, mtodo para grupos:
(math atributes) Arithmetic para promediar o None para sumar).
*da Rango vlido para los datos (mnimo, mximo, valor
(data range) predeterminado).

OFM 2005 MANUAL DE REFERENCIA 27


ARCHIVOS ASCII

Para el caso de variables de tipo alfanumrico (String) y de tipo fecha (Date), slo se
especifican atributos para reportes (y unidades para las de tipo fecha).
Cuando no se especifican los atributos de una variable, se asignan para ellos valores
preestablecidos.

En el siguiente ejemplo se presentan definiciones compactas (se omite la definicin de los


atributos de las variables en la mayora de los casos) de otros tipos de tablas:

*TABLENAME RESERVOIR Static


HGROSS Double
HNET Double
PHI Double
PERM Double
SWI Double
KHNET Calculate "PERM*HNET"

*TABLENAME MONTHLYPROD Monthly


OIL Double
GAS Double
WATER Double
DAYS Double

*TABLENAME DAILYPROD Daily


OIL Double
GAS Double
WATER Double
HOURS Double

*TABLENAME TEST Sporadic


DATE Date
OIL_FLOW Double
GAS_FLOW Double
WATER_FLOW Double
DURATION Double
CHOKE Long
WHP Double
WHT Double

*TABLENAME RES_AVG Xref


FLOWUNIT String 25
HNET Double
PHI Double
PERM Double

*TABLENAME PVT Lookup


PRESSURE Double
RS Double
BO Double
VO Double
CO Double

*TABLENAME OFM_DATA_LOG Trace


DEPTH Double
GR Float
RES Float
SP Float

28 OFM 2005 MANUAL DE REFERENCIA


ARCHIVOS ASCII

Del ejemplo anterior se pueden destacar algunos comentarios adicionales:

Las variables atribuidas se definen con la palabra clave Calculate, seguida de la ecuacin
o expresin a calcular, puesta entre comillas. Para estas variables se pueden definir los
mismos atributos que para cualquier variable de entrada.
Para las tablas mensuales y diarias no es necesario definir las variables que componen la
clave primaria (en este caso UNIQUEID y Date), puesto que el OFM las crea
automticamente cuando se le especifica el tipo de tabla (Monthly o Daily).
Para las tablas espordicas en cambio si es necesario definir la segunda variable de la clave
primaria (en este caso la primera variable es UNIQUEID), puesto que los datos pueden
variar con respecto a la fecha o con respecto a la profundidad. Esta segunda variable de la
clave primaria debe ser la primera variable que se defina en la tabla.
Para las tablas de referencia cruzada y para las tablas de bsqueda, la primera variable que
se define corresponde a la variable de bsqueda; en las de referencia cruzada debe ser de
tipo alfanumrico, y en las de bsqueda de tipo numrico (se permiten interpolaciones).
No es necesario definir atributos para las variables de las tablas de referencia cruzada, ni
para las de las tablas de bsqueda, puesto que los valores almacenados en ellas nunca sern
reportados directamente desde la tabla sino a travs de funciones en variables calculadas.
En las tablas tipo Trace es necesario definir en primer lugar la variable correspondiente a
la profundidad (normalmente se usa DEPTH).

6.2 ARCHIVOS DE DEFINICIN DE VARIABLES CALCULADAS

Aunque el OFM permite crear las variables calculadas de forma interactiva mediante la
interfase grfica de usuario, cuando se trata de una cantidad considerable de variables lo ms
conveniente de nuevo es hacerlo mediante la importacin de archivos planos ASCII en
formato especfico de OFM.

Debe tenerse en cuenta que la interfase grfica de usuario proporciona un asistente para
insertar funciones del sistema, el cual facilita enormemente el uso de las mismas; esta ayuda

OFM 2005 MANUAL DE REFERENCIA 29


ARCHIVOS ASCII

extra no est disponible cuando se crean variables calculadas por medio de archivos planos, lo
que implica que el usuario debe tener un conocimiento completo de las funciones que necesite.

Para estos archivos se deben observar ms o menos las mismas reglas y convenciones que para
los archivos de definicin de tablas; en ellos se especifica el nombre, la ecuacin o expresin
de clculo, y los atributos de las variables calculadas a crear.

Las siguientes convenciones se aplican a los archivos de definicin de variables calculadas:

La extensin recomendada para el nombre del archivo es *.par.


Se puede usar un mximo de 1024 caracteres por lnea.
Se pueden incrustar comentarios en el archivo, precedidos del smbolo // o /*; estos
comentarios son ignorados por el OFM al momento de cargar el archivo.
Las variables se definen especificando el nombre, seguido del signo igual (=) y de la
ecuacin o expresin de clculo; esta cadena de definicin se coloca completa entre
corchetes planos ([]), y va precedida por la letra c y un epacio en blanco.
Las mismas reglas que se deben seguir para los keywords en los nombres de las variables
de entrada, se aplican para los nombres de las variables calculadas.
Despus de definir cada variable calculada, y antes de definir la siguiente, se introducen
los atributos completos de la misma, de igual forma que para las variables de entrada en
los archivos de definicin de tablas, con la salvedad de que no se especifican opciones
matemticas y slo se especifica multiplicador para la salida de datos.
En la ecuacin de cualquier variable calculada se pueden utilizar constantes, operadores
simples, otras variables de cualquier clase (incluso otras variables calculadas), funciones
de sistema, y funciones definidas por el usuario.
Cuando se carga un archivo con definiciones de variables calculadas que usan variables de
entrada, las tablas a las que pertenecen dichas variables deben haber sido creadas
previamente en el proyecto OFM (independientemente de que en ellas se hayan cargado
datos o no); de lo contrario se produce un error y la variable no es cargada en el proyecto.

30 OFM 2005 MANUAL DE REFERENCIA


ARCHIVOS ASCII

Cuando la ecuacin de una variable calculada usa otra variable calculada, sta debe haber
sido cargada previamente al proyecto, bien sea en otro archivo de definicin, o en el
mismo archivo (el OFM procesa los archivos en forma secuencial, lnea por lnea).

El siguiente es un ejemplo de un archivo plano de definicin de variables calculadas:

// CUMULATIVE VARIABLES FOR MONTHLY DATA


c [Oil.Cum= @CumInput(MonthlyProd.Oil)]
*rh "Oil" "Cumulative" "Production"
*rf "13" "3" "Right"
*pn "Oil - Cumulative Production"
*pa "Green" "Solid" "None" 3 3
*u "bbl" "m3"
*mu "M"
c [Gas.Cum= @CumInput(MonthlyProd.Gas)]
*rh "Gas" "Cumulative" "Production"
*rf "13" "3" "Right"
*pn "Gas - Cumulative Production"
*pa "Red" "Solid" "None" 3 3
*u "cf" "scm"
*mu "MM"
c [Wat.Cum= @CumInput(MonthlyProd.Water)]
*rh "Water" "Cumulative" "Production"
*rf "13" "3" "Right"
*pn "Water - Cumulative Production"
*pa "Blue" "Solid" "None" 3 3
*u "bbl" "m3"
*mu "M"
c [Liq.Cum= Oil.Cum+Wat.Cum]
*rh "Liquid" "Cumulative" "Production"
*rf "13" "3" "Right"
*pn "Liquid - Cumulative Production"
*pa "Black" "Solid" "None" 3 3
*u "bbl" "m3"
*mu "M"

// RATE VARIABLES (CALCULATED WITH CALENDARY DAYS)


c [Oil.Rate_Calend_Days= MonthlyProd.Oil/@Dom(date)]
*rh "Oil" "Prod Rate" "Calend Days"
*rf "13" "2" "Right"
*pn "Oil - Production Rate (Calendary Days)"
*pa "Green" "Solid" "None" 2 2
*u "bbl/d" "m3/d"
*mu "1"
c [Gas.Rate_Calend_Days= MonthlyProd.Gas/@Dom(date)]
*rh "Gas" "Prod Rate" "Calend Days"
*rf "13" "2" "Right"
*pn "Gas - Production Rate (Calendary Days)"
*pa "Red" "Solid" "None" 2 2
*u "cf/d" "scm/d"
*mu "K"
c [Wat.Rate_Calend_Days= MonthlyProd.Water/@Dom(date)]
*rh "Water" "Prod Rate" "Calend Days"
*rf "13" "2" "Right"
*pn "Water - Production Rate (Calendary Days)"
*pa "Blue" "Solid" "None" 2 2
*u "bbl/d" "m3/d"
*mu "1"

OFM 2005 MANUAL DE REFERENCIA 31


ARCHIVOS ASCII

6.3 ARCHIVOS DE DATOS

Estos archivos contienen la informacin que se cargar a la base de datos, una vez hayan sido
creadas las tablas respectivas. Existen algunas reglas bsicas que deben tenerse en cuenta al
momento de crear estos archivos de datos:

La informacin contenida en un archivo plano de datos est en formato de columnas, con


una fila de keywords en la parte superior para identificar las columnas.
Cada archivo plano debe empezar con el keyword *TableName para identificar el nombre
de la tabla en la que se van a cargar los datos.
Normalmente los datos se separan por columnas o tabulaciones.
El smbolo de separacin de cifras decimales debe ser el punto (.). El OFM interpreta las
comas como separadores de columnas.

Los datos en estos archivos planos pueden introducirse en diferentes formatos; el formato se
refiere a la manera en que estn organizadas las columnas de datos en el archivo. El OFM
acepta archivos ASCII con formato libre o con formato fijo; en archivos ASCII con formato
libre un nmero arbitrario de espacios separan los datos, y en archivos ASCII con formato fijo
cada columna de datos comienza y termina en un nmero especfico de columna de caracter.

6.3.1 Formato Libre

El formato libre se caracteriza porque los datos no tienen que estar localizados en columnas
especficas, por lo cual es ms fcil de usar que el formato fijo. En el encabezamiento van los
nombres de las variables tal como se definieron en la tabla, uno al lado del otro precedidos por
un asterisco y separados al menos por un espacio; esta lnea asigna el orden de lectura de los
datos en las lneas siguientes, cada una de las cuales es leda de principio a fin usando espacios
para identificar la separacin entre los datos. Para mejorar la presentacin de archivos con
formato libre, los datos pueden ordenarse por columnas alinendolos por su primer caracter.

32 OFM 2005 MANUAL DE REFERENCIA


ARCHIVOS ASCII

Otra caracterstica de este formato es que los datos nulos deben incluirse en el archivo; si no se
escribe alguno y en su lugar se deja un espacio vaco, ste no es tenido en cuenta en el
momento de la lectura, ya que los espacios son interpretados como separadores de datos, y el
siguiente dato tomar el lugar del dato en cuestin que haya sido omitido. En las posiciones
de los datos nulos debe introducirse un valor definido como tal (-99999 es el valor
predeterminado). De igual forma, en datos alfanumricos no deben dejarse espacios (ni
comas); en lugar de los espacios es comn usar caracteres de subrayado ( _ ).

Un ejemplo de archivo ASCII de datos con formato libre es el siguiente:

*TABLENAME MONTHLYPROD
*UNIQUEID *DATE *DAYS *OIL *WATER *GAS
WELL0001 20070101 31.00 115.64 10.53 6.40
WELL0001 20070201 28.00 98.56 10.35 5.40
WELL0001 20070301 31.00 109.83 10.98 3.60
WELL0001 20070401 30.00 118.09 11.43 2.70
WELL0002 20070101 31.00 113.96 11.43 -99999
WELL0002 20070201 28.00 110.46 10.71 -99999
WELL0002 20070301 31.00 104.23 9.72 -99999
WELL0002 20070401 30.00 108.36 10.17 -99999

6.3.2 Formato Fijo

Se caracteriza porque es estrictamente estructurado en columnas; por medio de un encabezado


que contiene el orden y la localizacin de los datos. Un ejemplo de archivo ASCII de datos
con formato fijo es el siguiente:

*TABLENAME MONTHLYPROD
*Format
*UNIQUEID 1 12
*DATE 13 20
*DAYS 21 27
*OIL 28 38
*WATER 39 48
*GAS 49 58
*End_Format
WELL0001 20070101 31.00 115.64 10.53 6.40
WELL0001 20070201 28.00 98.56 10.35 5.40
WELL0001 20070301 31.00 109.83 10.98 3.60
WELL0001 20070401 30.00 118.09 11.43 2.70
WELL0002 20070101 31.00 113.96 11.43
WELL0002 20070201 28.00 110.46 10.71
WELL0002 20070301 31.00 104.23 9.72
WELL0002 20070401 30.00 108.36 10.17

OFM 2005 MANUAL DE REFERENCIA 33


ARCHIVOS ASCII

La palabra clave *Format inicia el encabezado, seguida por una lista de los nombres de las
variables tal como se definieron el la tabla y precedidos por un asterisco. Frente a cada uno se
colocan los nmeros que indican las posiciones de la primera y de la ltima columna de
caracteres entre las cuales deben ir sus valores, y finalmente, la palabra clave *End_Format
cierra el encabezado.

Para variables de datos alfanumricos debe tenerse en cuenta que en el momento de la lectura
el OFM remueve las comas y reemplaza los espacios vacos por caracteres de subrayado ( _ ).

6.3.3 Formato Especial

Debido a que es bastante frecuente tener en un mismo archivo muchos datos para una misma
entidad, el OFM tiene un formato especial que evita tener que repetir el nombre de la entidad
en todas las lneas referentes a ella. Un ejemplo de archivo ASCII de datos con este formato
especial es el siguiente:

*TABLENAME MONTHLYPROD
*DATE *DAYS *OIL *WATER *GAS
*KEYNAME WELL0001
20070101 31.00 115.64 10.53 6.40
20070201 28.00 98.56 10.35 5.40
20070301 31.00 109.83 10.98 3.60
20070401 30.00 118.09 11.43 2.70
*KEYNAME WELL0002
20070101 31.00 113.96 11.43 -99999
20070201 28.00 110.46 10.71 -99999
20070301 31.00 104.23 9.72 -99999
20070401 30.00 108.36 10.17 -99999

El keyword *KEYNAME ms el nombre de la entidad, reemplazan al keyword


correspondiente a la entidad y su respectiva columna de nombres.

Este formato puede ser usado tanto con datos referentes a entidades primarias (peridicos,
espordicos), como con datos de entidades de nivel de pozo (desviacin, marcadores, etc.).

34 OFM 2005 MANUAL DE REFERENCIA


CREACIN DE UN PROYECTO OFM

7 CREACIN DE UN PROYECTO OFM

En el proceso de creacin de un proyecto OFM, la primera tarea importante es separar y


organizar los datos existentes. La fase de montaje ser mucho ms fcil si se decide que se
quiere hacer con el proyecto y de acuerdo a ello se anticipan los requerimientos de datos.

Seguir las siguientes recomendaciones en las fases de planeacin, puede ayudar a crear un
proyecto OFM ms funcional, y a ahorrar tiempo en el proceso completo de creacin:

Antes del montaje del proyecto, definir todas las tablas que se puedan llegar a necesitar,
aunque algunas de ellas solo puedan ser pobladas posteriormente.
Separar la informacin para cada proyecto de acuerdo al tipo de datos.
Usar formatos para recolectar la informacin de cada tabla.
Establecer con anticipacin los procedimientos de actualizacin que a utilizar en el futuro.
Planificar la manera en que se va a trabajar con los datos en reportes y grficas, y
determinar las posibles categoras de seleccin y estructura de tablas.
Se debe determinar si las entidades bsicas del proyecto sern a nivel de completamiento o
a nivel de pozo, en concordancia con el nivel de detalle de la informacin disponible.

Una vez que se han definido claramente las tareas que se quieren llevar a cabo con el proyecto,
y se ha recolectado y organizado adecuadamente toda la informacin requerida para efectuar
dichas tareas, el paso a seguir es crear la estructura de tablas (base de datos relacional) que
constituir el proyecto OFM, para finalmente cargar all toda la informacin.

Es importante recordar que primero se deben definir las tablas antes de poder poblarlas con
datos; las variables calculadas se pueden crear en cualquier momento despus de haber
definido las tablas a las que pertenecen las variables de entrada que se vayan a usar en las
ecuaciones, con independencia de que en dichas variables se hayan cargado datos o no. Como
ya se ha dicho, aunque el OFM permite hacer estas tareas de forma interactiva mediante la

OFM 2005 MANUAL DE REFERENCIA 35


CREACIN DE UN PROYECTO OFM

interfase grfica de usuario, la mayora de las veces la forma ms prctica de hacerlo es


mediante la importacin de archivos ASCII.

Para crear un proyecto nuevo en OFM se utiliza la ventana de dilogo New OFM Project, que
permite dar un nombre nico al proyecto, especificar como se quiere definir, y seleccionar los
datos para incluir en la base de datos del mismo.

Los pasos para la creacin de un proyecto OFM son los siguientes:

1. Seleccionar New Workspace en el men File, o hacer clic sobre el cono sobre la
barra de herramientas File. Se despliega la ventana de dilogo New OFM Workspace.
2. Introducir el nombre que se desee para el archivo del espacio de trabajo en el cuadro de
texto Workspace File. Hacer clic sobre el botn browse para cambiar la localizacin
predeterminada del archivo del espacio de trabajo (workspace).
3. Escribir el nombre que se desee para el archivo de la base de datos en el cuadro de texto
Database File. Hacer clic sobre el botn browse para cambiar la localizacin
predeterminada del archivo de la base de datos.
4. Seleccionar la forma en que se quiere definir el proyecto de una de las opciones mostradas:
Use a Template (por medio de plantillas).
Design it interactively (interactivamente).
Create from the data source specified below (de una fuente de datos a especificar).
En este caso se selecciona la tercera opcin.
5. Seleccionar la versin de Access (Database Version) que se desee usar para la base de
datos del proyecto, con los botones de opcin correspondientes:
Access 97.
Access 2000.
Estas opciones se activan al seleccionar la segunda o la tercera opcin en el paso anterior.
6. Activar o desactivar segn se desee la casilla de verificacin Prompt for Project Filter,
que limita el nmero de completamientos usados durante una sesin de OFM.
7. Hacer clic sobre la flecha del cuadro con lista desplegable Data Source y seleccionar el
tipo de origen de datos para el nuevo proyecto de una de las siguientes opciones:

36 OFM 2005 MANUAL DE REFERENCIA


CREACIN DE UN PROYECTO OFM

ASCII Flat Files (Archivos planos ASCII).


ODBC Direct Connect (Coneccin directa ODBC).
ODBC Permanent Data Download (Descarga permanente de datos ODBC).
OFM3 Project Database (Archivos de bases de datos OFM de versiones anteriores).
PI/Dwights DMP2 Production File (Archivo de produccin de bases de datos
estndar).
PI/Dwights 298 Production (Fixed-Format) File (Archivo de produccin en formato
fijo de bases de datos estndar).
En este caso se selecciona la primera opcin.
8. Hacer clic sobre el botn OK. Se despliega automticamente la ventana de dilogo del
OFM Data Loader. Este cargador de datos de OFM permite seleccionar e importar los
archivos a incluir en el proyecto, y es usado tanto en el proceso de creacin, como para
adicionar datos a proyectos existentes.
9. Navegar hasta la localizacin del archivo que se desea cargar y seleccionarlo; en este
caso debe ser el archivo de definicin de tablas que incluya la tabla maestra. El archivo
debe aparecer en la lista del campo Files to Load (archivos a cargar).
10. En el cuadro con lista desplegable Data Type, seleccionar y asociar el tipo de tabla OFM
adecuado para el archivo que se est cargando; para este caso debe ser DEFINITION.
11. Activar la casilla de verificacin Show Results (mostrar resultados).
12. Hacer clic sobre el botn Load. Se despliega el mapa base y se cargan los nuevos datos.

En cualquier caso, si despus de usar el OFM Data Loader para cargar cualquier tipo de
archivo o archivos, aparece un mensaje de error en el que se comunica que algn archivo no se
carg, se debe seleccionar Database\Data Loader, para regresar al punto anterior al cargue de
los archivos, y verificar los archivos a cargar, los tipos de datos y las tablas donde se desea
cargar cada uno de los archivos.

Para seleccionar los archivos se debe hacer clic dos veces sobre cada uno de ellos, o bien seleccionarlo y hacer clic en el botn Add.

Esta asociacin del tipo de archivo a cargar se hace de forma automtica cuando el nombre del archivo usa la extensin predeterminada.

OFM 2005 MANUAL DE REFERENCIA 37

You might also like