Namespace: OpenEdge.DataAdmin.Binding
Type: Class CdcFieldPolicyContext
Parent Classes:
Inherits: OpenEdge.DataAdmin.Binding.DataAdminContext
Implements: OpenEdge.DataAdmin.Binding.IDataAdminContext, OpenEdge.DataAdmin.Binding.IJsonRowListener, OpenEdge.DataAdmin.Binding.IStreamFieldHandler


/* Copyright (c) 2015-2018 by Progress Software Corporation
/*
/* all rights reserved. no part of this program or document
/* may be reproduced in any form or by any means without
/* permission in writing from progress Software Corporation.
File:CdcFieldPolicyContext
Author(s):mkondra
Created:Tue Nov 24 15:18:14 IST 2015



Method Summary
  Options Name Purpose
  AddFieldPolicyValues (JsonObject, table)
  AddRowValues (character, JsonObject, table-handle)
  AssertScope ()
  LOGICAL CanFind (character)
  LOGICAL CanFind (integer)
  CHARACTER ColumnExpression (character, character, character) /* form a query expression which finds unique field for policy based on table name and policy name. we need this since same fieldname can exist in different tables and same table names can exist in different schemas @TODO not satisfied with this solution, need a nicer way */
  CHARACTER ColumnSource (character)
  CopyTable (IDataAdminModel)
  CopyTable (table)
  CopyTable (table, IRow)
  CopyTableForParent (IRow, IDataAdminModel)
  OpenEdge.DataAdmin.IDataAdminCollection CreateCollection (IDataAdminContext)
  OpenEdge.DataAdmin.IDataAdminElement CreateEntity (IRequestInfo)
  CreateRow (character, character)
  CreateRow (character, character, integer)
  CreateRow (ICdcFieldPolicy)
  CreateRow (IDataAdminElement)
  LOGICAL Delete (character)
  LOGICAL DeserializeRow (handle, log)
  LOGICAL Find (character)
  LOGICAL Find (integer)
  CHARACTER FindExpression (integer)
  CHARACTER GetChildQuery (IRow)
  CHARACTER GetCreateError (ICdcFieldPolicy)
  CHARACTER GetJoinFields (character)
  CHARACTER GetPolicyFieldDataType (character, integer)
  CHARACTER GetPolicyFieldName (character, integer)
  INTEGER GetPolicyFieldNumber (character, character, character)
  INTEGER GetPolicyNumFields (character)
  CHARACTER GetPolicyTableName (character)
  CHARACTER GetServerJoinFields (character)
  ReadField (JsonObject, handle) /** read a buffer field from json */
  SerializeRow (handle)
  SetTreeOptions (IDataTree)
  Split (character, character, character, character) /* split the field property which has field name, table name and policy name */
  UpdateCdcTablePolicyName (character, character)
  UpdatePartitionDefault (character, character, character, character)
  UpdateValue (character, character)
  ValueChanged (character, character, character)
  CHARACTER WriteFieldAssignments (handle, character, integer, handle)
  WriteFieldStatements (handle, character, handle)
  WriteValuesAsCode (handle, character, recid, table) /* genereate code for value assignment */

Constructor Summary
  Options Name Purpose
  CdcFieldPolicyContext ()
  CdcFieldPolicyContext (ISchemaScope)
  CdcFieldPolicyContext (ISchemaScope, log)

Property Summary
  Options Name Purpose
  INTEGER Count
  CHARACTER KeyFields
  CHARACTER StatementFieldNames
  HANDLE TableHandle


Method Detail
Top

AddFieldPolicyValues (JsonObject, table)

Parameters:
pjson Progress.Json.ObjectModel.JsonObject
 
ttCdcFieldPolicy TABLE
 
Top

AddRowValues (character, JsonObject, table-handle)

Parameters:
pname CHARACTER
 
pjson Progress.Json.ObjectModel.JsonObject
 
h TABLE-HANDLE
 
Top

AssertScope ()

Top

LOGICAL CanFind (character)

Parameters:
pName CHARACTER
 
Returns LOGICAL
 
Top

LOGICAL CanFind (integer)

Parameters:
pid INTEGER
 
Returns LOGICAL
 
Top

CHARACTER ColumnExpression (character, character, character)

/* form a query expression which finds unique field for policy based on table name and policy name.
we need this since same fieldname can exist in different tables and same table names can exist in different schemas
@TODO not satisfied with this solution, need a nicer way
Parameters:
pcColumn CHARACTER
 
pcOperator CHARACTER
 
pcValue CHARACTER
 
Returns CHARACTER
 
Top

CHARACTER ColumnSource (character)

Parameters:
pcColumn CHARACTER
 
Returns CHARACTER
 
Top

CopyTable (IDataAdminModel)

Parameters:
cntxt OpenEdge.DataAdmin.Binding.IDataAdminModel
 
Top

CopyTable (table)

Parameters:
copytable TABLE
 
Top

CopyTable (table, IRow)

Parameters:
copyTable TABLE
 
pRow OpenEdge.DataAdmin.Binding.IRow
 
Top

CopyTableForParent (IRow, IDataAdminModel)

Parameters:
piRow OpenEdge.DataAdmin.Binding.IRow
 
cntxt OpenEdge.DataAdmin.Binding.IDataAdminModel
 
Top

OpenEdge.DataAdmin.IDataAdminCollection CreateCollection (IDataAdminContext)

Parameters:
cntxt OpenEdge.DataAdmin.Binding.IDataAdminContext
 
Returns OpenEdge.DataAdmin.IDataAdminCollection
 
Top

OpenEdge.DataAdmin.IDataAdminElement CreateEntity (IRequestInfo)

Parameters:
preq OpenEdge.DataAdmin.IRequestInfo
 
Returns OpenEdge.DataAdmin.IDataAdminElement
 
Top

CreateRow (character, character)

Parameters:
pcPolicyName CHARACTER
 
pname CHARACTER
 
Top

CreateRow (character, character, integer)

Parameters:
PolicyName CHARACTER
 
fieldname CHARACTER
 
idenfield INTEGER
 
Top

CreateRow (ICdcFieldPolicy)

Parameters:
fieldPolicy OpenEdge.DataAdmin.ICdcFieldPolicy
 
Top

CreateRow (IDataAdminElement)

Parameters:
entity OpenEdge.DataAdmin.IDataAdminElement
 
Top

LOGICAL Delete (character)

Parameters:
pName CHARACTER
 
Returns LOGICAL
 
Top

LOGICAL DeserializeRow (handle, log)

Parameters:
phStream HANDLE
 
plReplace LOGICAL
 
Returns LOGICAL
 
Top

LOGICAL Find (character)

Parameters:
pName CHARACTER
 
Returns LOGICAL
 
Top

LOGICAL Find (integer)

Parameters:
pid INTEGER
 
Returns LOGICAL
 
Top

CHARACTER FindExpression (integer)

Parameters:
pid INTEGER
 
Returns CHARACTER
 
Top

CHARACTER GetChildQuery (IRow)

Parameters:
pparent OpenEdge.DataAdmin.Binding.IRow
 
Returns CHARACTER
 
Top

CHARACTER GetCreateError (ICdcFieldPolicy)

Parameters:
newField OpenEdge.DataAdmin.ICdcFieldPolicy
 
Returns CHARACTER
 
Top

CHARACTER GetJoinFields (character)

Parameters:
parentid CHARACTER
 
Returns CHARACTER
 
Top

CHARACTER GetPolicyFieldDataType (character, integer)

Parameters:
pcPolicyName CHARACTER
 
pinum INTEGER
 
Returns CHARACTER
 
Top

CHARACTER GetPolicyFieldName (character, integer)

Parameters:
pcPolicyName CHARACTER
 
pinum INTEGER
 
Returns CHARACTER
 
Top

INTEGER GetPolicyFieldNumber (character, character, character)

Parameters:
pcPolicyName CHARACTER
 
pcTable CHARACTER
 
pcfield CHARACTER
 
Returns INTEGER
 
Top

INTEGER GetPolicyNumFields (character)

Parameters:
pcPolicyName CHARACTER
 
Returns INTEGER
 
Top

CHARACTER GetPolicyTableName (character)

Parameters:
pcPolicyName CHARACTER
 
Returns CHARACTER
 
Top

CHARACTER GetServerJoinFields (character)

Parameters:
parentid CHARACTER
 
Returns CHARACTER
 
Top

ReadField (JsonObject, handle)

Purpose: read a buffer field from json
Parameters:
pjson Progress.Json.ObjectModel.JsonObject
 
phfld HANDLE
 
Top

SerializeRow (handle)

Parameters:
phStream HANDLE
 
Top

SetTreeOptions (IDataTree)

Parameters:
tree OpenEdge.DataAdmin.Binding.IDataTree
 
Top

Split (character, character, character, character)

/* split the field property which has field name, table name and policy name
Parameters:
pcValue CHARACTER
 
cField CHARACTER
 
cTable CHARACTER
 
cpolicy CHARACTER
 
Top

UpdateCdcTablePolicyName (character, character)

Parameters:
pcOldname CHARACTER
 
pcNewname CHARACTER
 
Top

UpdatePartitionDefault (character, character, character, character)

Parameters:
pcPolicyName CHARACTER
 
pcfield CHARACTER
 
pcold CHARACTER
 
pcnew CHARACTER
 
Top

UpdateValue (character, character)

Parameters:
pcOldname CHARACTER
 
pcNewname CHARACTER
 
Top

ValueChanged (character, character, character)

Parameters:
pFieldName CHARACTER
 
pcOldValue CHARACTER
 
pNewValue CHARACTER
 
Top

CHARACTER WriteFieldAssignments (handle, character, integer, handle)

Parameters:
pstream HANDLE
 
pcname CHARACTER
 
piAt INTEGER
 
pbuf HANDLE
 
Returns CHARACTER
 
Top

WriteFieldStatements (handle, character, handle)

Parameters:
phstream HANDLE
 
pcvarname CHARACTER
 
phbuf HANDLE
 
Top

WriteValuesAsCode (handle, character, recid, table)

/* genereate code for value assignment
Parameters:
phStream HANDLE
 
pcinstName CHARACTER
 
prec RECID
 
ttCdcFieldPolicy TABLE
 


Constructor Detail
Top

CdcFieldPolicyContext ()

Top

CdcFieldPolicyContext (ISchemaScope)

Parameters:
pscope OpenEdge.DataAdmin.Binding.Factory.ISchemaScope
 
Top

CdcFieldPolicyContext (ISchemaScope, log)

Parameters:
pScope OpenEdge.DataAdmin.Binding.Factory.ISchemaScope
 
plLocal LOGICAL
 


Property Detail
Top

INTEGER Count

Returns INTEGER
 
Top

CHARACTER KeyFields

Returns CHARACTER
 
Top

CHARACTER StatementFieldNames

Returns CHARACTER
 
Top

HANDLE TableHandle

Returns HANDLE