0% found this document useful (0 votes)
99 views27 pages

Drawing by Rule Programming Guide 2011R1

Smart 3D Drawings and Reports
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
99 views27 pages

Drawing by Rule Programming Guide 2011R1

Smart 3D Drawings and Reports
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Drawing by Rule API

Programming Guide

Version 2011 R1 (9.1)

January 2014

DSP3D-PE-200142A
Copyright
®
Copyright © 1999-2014 Intergraph Corporation. All Rights Reserved. Intergraph is part of Hexagon.
Including software, file formats, and audiovisual displays; may be used pursuant to applicable software license agreement;
contains confidential and proprietary information of Intergraph and/or third parties which is protected by copyright law, trade secret
law, and international treaty, and may not be provided or otherwise made available without proper authorization from Intergraph
Corporation.

U.S. Government Restricted Rights Legend


Use, duplication, or disclosure by the government is subject to restrictions as set forth below. For civilian agencies: This was
developed at private expense and is "restricted computer software" submitted with restricted rights in accordance with
subparagraphs (a) through (d) of the Commercial Computer Software - Restricted Rights clause at 52.227-19 of the Federal
Acquisition Regulations ("FAR") and its successors, and is unpublished and all rights are reserved under the copyright laws of the
United States. For units of the Department of Defense ("DoD"): This is "commercial computer software" as defined at DFARS
252.227-7014 and the rights of the Government are as specified at DFARS 227.7202-3.
Unpublished - rights reserved under the copyright laws of the United States.
Intergraph Corporation
P.O. Box 240000
Huntsville, AL 35813

Terms of Use
Use of this software product is subject to the End User License Agreement ("EULA") delivered with this software product unless the
licensee has a valid signed license for this software product with Intergraph Corporation. If the licensee has a valid signed license
for this software product with Intergraph Corporation, the valid signed license shall take precedence and govern the use of this
software product. Subject to the terms contained within the applicable license agreement, Intergraph Corporation gives licensee
permission to print a reasonable number of copies of the documentation as defined in the applicable license agreement and
delivered with the software product for licensee's internal, non-commercial use. The documentation may not be printed for resale or
redistribution.

Warranties and Liabilities


All warranties given by Intergraph Corporation about equipment or software are set forth in the EULA provided with the software or
applicable license for the software product signed by Intergraph Corporation, and nothing stated in, or implied by, this document or
its contents shall be considered or deemed a modification or amendment of such warranties. Intergraph believes the information in
this publication is accurate as of its publication date.
The information and the software discussed in this document are subject to change without notice and are subject to applicable
technical product descriptions. Intergraph Corporation is not responsible for any error that may appear in this document.
The software discussed in this document is furnished under a license and may be used or copied only in accordance with the terms
of this license. No responsibility is assumed by Intergraph for the use or reliability of software on equipment that is not supplied by
Intergraph or its affiliated companies. THE USER OF THE SOFTWARE IS EXPECTED TO MAKE THE FINAL EVALUATION AS
TO THE USEFULNESS OF THE SOFTWARE IN HIS OWN ENVIRONMENT.
Intergraph is not responsible for the accuracy of delivered data including, but not limited to, catalog, reference and symbol data.
Users should verify for themselves that the data is accurate and suitable for their project work.

Trademarks
Intergraph and the Intergraph logo are registered trademarks of Intergraph Corporation. Microsoft and Windows are registered
trademarks of Microsoft Corporation. Other brands and product names are trademarks of their respective owners.
Contents
Overview ....................................................................................................................................................... 5

Factory Wrapper Class ............................................................................................................................... 7


IJDBRFactoryW Methods ....................................................................................................................... 7
CreateGraphicView .......................................................................................................................... 7
CreateSnapIn ................................................................................................................................... 8
GetDBRObjectStorage ..................................................................................................................... 8
GetSnapIn ........................................................................................................................................ 9
GetTemporaryFileName ................................................................................................................... 9

SnapIn Wrapper Class ................................................................................................................................ 9


IJDBRSnapInW Methods ...................................................................................................................... 10
AddNewDocument.......................................................................................................................... 10
AddUnassignedView ...................................................................................................................... 10
AddUnassignedViews..................................................................................................................... 10
GetCustomData .............................................................................................................................. 11
GetCustomDataFile ........................................................................................................................ 11
GetDocument ................................................................................................................................. 11
GetView .......................................................................................................................................... 12
PrepareForCommit ......................................................................................................................... 12
RemoveUnassignedView ............................................................................................................... 12
SetCustomData .............................................................................................................................. 13
SetCustomDataFile ........................................................................................................................ 13
IJDBRSnapInW Properties ................................................................................................................... 13
Documents ..................................................................................................................................... 14
Template ......................................................................................................................................... 14

Template Wrapper Class........................................................................................................................... 14


IJDBRTemplateW Methods .................................................................................................................. 14
GetNewDocument .......................................................................................................................... 15
IJDBRTemplateW Properties ................................................................................................................ 15
DocumentAssignmentRule ............................................................................................................. 15
DocumentNamingRule ................................................................................................................... 15
SheetAssignmentRule .................................................................................................................... 16
SheetNamingRule .......................................................................................................................... 16
SnapIn ............................................................................................................................................ 16

Document Wrapper Class ......................................................................................................................... 16


IJDBRDocumentW Methods ................................................................................................................. 16
Delete ............................................................................................................................................. 17
RunLayout ...................................................................................................................................... 17
RunRules ........................................................................................................................................ 17
IJDBRDocumentW Properties .............................................................................................................. 18
Sheets ............................................................................................................................................ 18
SnapIn ............................................................................................................................................ 18
ViewBuilder ..................................................................................................................................... 18

Drawing by Rule API Programming Guide 3


Contents

Views .............................................................................................................................................. 19

Sheet Wrapper Class................................................................................................................................. 19


IJDBRSheetW Methods ........................................................................................................................ 19
AssignView ..................................................................................................................................... 19
AssignViews ................................................................................................................................... 20
RunLayout ...................................................................................................................................... 20
IJDBRSheetW Properties ..................................................................................................................... 20
Regions .......................................................................................................................................... 21

View Wrapper Class .................................................................................................................................. 21


IJDBRViewW Methods .......................................................................................................................... 21
GeneratePreview ............................................................................................................................ 21
GetViewStyle .................................................................................................................................. 22
Setup .............................................................................................................................................. 22
UpdateQueries ............................................................................................................................... 22
IJDBRViewW Properties ....................................................................................................................... 23
Sheet .............................................................................................................................................. 23

Examples .................................................................................................................................................... 24
Document Setup ................................................................................................................................... 24

Index ........................................................................................................................................................... 27

4 Drawing by Rule API Programming Guide


Overview
DrawingByRuleAPI is a set of object class wrappers to help insulate you from writing large
amounts of code to implement customized drawing by rule workflows.
You enter the API through the factory class wrapper and request a snap-in class wrapper for either
an existing snap-in or for a created snap-in. After you have the snap-in class wrapper, the
following hierarchy is available.

The API supports the running of rules at the document level.


Factory Wrapper Class (on page 7) - Accesses an existing snap-in or creates a new snap-in.
The class implements other factory and convenience methods.
SnapIn Wrapper Class (on page 9) - A drawings by rule automation snap-in class wrapper that
aggregates the DwgByRuleSnapIn business object. After the business object is set, you can use
this wrapper when the DwgByRuleSnapin business object is also used.
Template Wrapper Class (on page 14) - A drawings by rule automation template class wrapper
that aggregates the DwgByRuleDocument business object representing a template document.
After the business object is set, you can use this wrapper when the DwgByRuleDocument
business object is also used.

Drawing by Rule API Programming Guide 5


Overview

Document Wrapper Class (on page 16) - A drawings by rule automation document class
wrapper that aggregates the DwgByRuleDocument business object. After the business object is
set, you can use this wrapper when the DwgByRuleDocument business object is also used.
Sheet Wrapper Class (on page 19) - A drawings by rule automation sheet class wrapper that
represents a single sheet within a document.
View Wrapper Class (on page 21) - A drawings by rule automation view class wrapper that
aggregates the DwgByRuleView business object. After the business object is set, you can use this
wrapper when the DwgByRuleView business object is also used.
See Also
Examples (on page 23)

6 Drawing by Rule API Programming Guide


Factory Wrapper Class
A drawings by rule automation factory class wrapper that does not aggregate any business object.
You can use this wrapper to access either an existing snap-in or to create a new snap-in. The
class implements other factory and convenience methods.
Class: DBRFactoryW
Interfaces: IJDBRFactoryW

IJDBRFactoryW Methods
Each method has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

CreateGraphicView
Returns a view class wrapper for a newly created graphic view business object. The method does
not generate the preview for the view.
CreateGraphicView(
ByVal pdispInputs as Object,
ByVal pViewDef as IJXDBRViewDefinition) as IJDBRViewW

Parameters

[in] pdispInputs The inputs needed to create a graphic view.

[in] pViewDef The view definition controlling the graphic view creation.

Drawing by Rule API Programming Guide 7


Factory Wrapper Class

CreateSnapIn
Returns a snap-in class wrapper for a newly created snap-in business object.
CreateSnapIn(
ByVal pParent as IJDDwgParent,
ByVal bstrPackage as String) as IJDBRSnapInW

Parameters

[in] pParent The parent within the drawing hierarchy of the new snap-in business
object.

[in] bstrPackage The name of the package to use when creating of the snap-in business
object.

GetDBRObjectStorage
Returns the object storage for a view business object.
GetDBRObjectStorage(
ByVal bstrViewDBID as String,
ByVal bForceCreate as Boolean,
ByRef ppStorageMgr as IJDBRObjectStorageMgr,
ByRef ppStorage as IJDBRObjectStorage) as IJDBRSnapInW

Parameters

[in] bstrViewDBID The DBID of the view business object.

[in] bForceCreate A flag indicating that the object storage should be created if it does not
exist.

[out] ppStorageMgr The object storage manager, required to remove the object storage if it
was created by this call.

[out] ppStorage The object storage for a view business object.

8 Drawing by Rule API Programming Guide


SnapIn Wrapper Class

GetSnapIn
Returns a snap-in class wrapper for an existing snap-in business object.
GetSnapIn(ByVal vSnapIn as Variant) as IJDBRSnapInW

Parameters

[in] vSnapIn The snap-in to return for a class wrapper . This can be any of the
following:
 The moniker of the snap-in business object
 The actual snap-in business object
 The DBID string of the snap-in business object

GetTemporaryFileName
Returns a snap-in class wrapper for a newly created snap-in business object.
GetTemporaryFileName(ByVal bstrExtension as String) as String

Parameters

[in] bstrExtension The extension of the file name.

SnapIn Wrapper Class


A drawings by rule automation snap-in class wrapper that aggregates the DwgByRuleSnapIn
business object. After the business object is set, you can use this wrapper when the
DwgByRuleSnapin business object is also used.
Class: DBRSnapInW
Interfaces: IJDBRSnapInW

Drawing by Rule API Programming Guide 9


SnapIn Wrapper Class

IJDBRSnapInW Methods
Each method has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

AddNewDocument
Returns a document class wrapper for a newly created sheet business object.
AddNewDocument() as IJDBRDocumentW
This method has no parameters.

AddUnassignedView
Adds the view as being unassigned in the snap-in.
AddUnassignedView(ByVal pViewW as IJDBRViewW)

Parameters

[in] pViewW The view class wrapper to add.

AddUnassignedViews
Adds the views within the collection as being unassigned in the snap-in.
AddUnassignedViews(ByVal pViews as IJDObjectCollection)

Parameters

[in] pViews The collection of view class wrappers to add.

10 Drawing by Rule API Programming Guide


SnapIn Wrapper Class

GetCustomData
Gets the keyed custom data related to the snap-in business object.
GetCustomData(ByVal bstrKey as String) as Variant

Parameters

[in] bstrKey The key to the stored data. By specifying different keys, more than one
piece of custom data can be stored for a snap-in business object.

GetCustomDataFile
Gets the keyed custom data file related to the snap-in business object.
GetCustomDataFile(ByVal bstrKey as String) as String

Parameters

[in] bstrKey The key to the stored data file. By specifying different keys, more than
one custom data file can be stored for a snap-in business object.

GetDocument
Returns a document class wrapper contained within the snap-in.
GetDocument(ByVal bstrDBID as String) as IJDBRDocumentW

Parameters

[in] bstrDBID The DBID of the sheet business object to return for the document class
wrapper.

Drawing by Rule API Programming Guide 11


SnapIn Wrapper Class

GetView
Returns a view class wrapper that is unassigned contained within the snap-in.
GetView(ByVal vView as Variant) as IJDBRViewW

Parameters

[in] vView The view in which to return a class wrapper. The view can be any of
the following:
 The moniker of the view business object
 The actual view business object
 The DBID string of the view business object

PrepareForCommit
Prepares the API for a commit to be done. All business objects are released.
PrepareForCommit(ByVal bFlushRAD as Boolean)

Parameters

[in] bFlushRAD Indicates that all RAD pointers should also be released.

You should call this method before every Commit/Abort is done in the calling unit.

RemoveUnassignedView
Removes the view as being unassigned in the snap-in.
RemoveUnassignedView(ByVal pViewW as IJDBRViewW)

Parameters

[in] pViewW The view class wrapper to remove.

12 Drawing by Rule API Programming Guide


SnapIn Wrapper Class

SetCustomData
Sets the keyed custom data related to the snap-in business object. The data is currently blobbed
as a string in the database.
SetCustomData(ByVal bstrKey as String, ByVal vData as Variant)

Parameters

[in] bstrKey The key to the stored data. By specifying different keys, more than one
piece of custom data can be stored for a snap-in business object.

[in] vData The data to be saved to the database

SetCustomDataFile
Sets the keyed custom data file related to the snap-in business object. The file is zipped and
blobbed in the database.
SetCustomDataFile(ByVal bstrKey as String, bstrFileName as String)

Parameters

[in] bstrKey The key to the stored data file. By specifying different keys, more than
one custom data file can be stored for a snap-in business object.

[in] bstrFileName The full path of the file to be saved to the database.

IJDBRSnapInW Properties
Each property has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

Drawing by Rule API Programming Guide 13


Template Wrapper Class

Documents
The collection of document class wrappers contained within the snap-in.
Documents() as IJDObjectCollection
Modifiability: Read only

Template
The template class wrapper to be used by the snap-in.
Template() as IJDDBRTemplateW
Modifiability: Read only

Template Wrapper Class


A drawings by rule automation template class wrapper that aggregates the DwgByRuleDocument
business object representing a template document. After the business object is set, you can use
this wrapper when the DwgByRuleDocument business object is also used.
Class: DBRTemplateW
Interfaces: IJDBRTemplateW

IJDBRTemplateW Methods
Each method has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

14 Drawing by Rule API Programming Guide


Template Wrapper Class

GetNewDocument
Returns a document class wrapper that contains a newly created RAD document that is not
associated with a sheet business object.
GetNewDocument() as IJDBRDocument
This method has no parameters.

IJDBRTemplateW Properties
Each property has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

DocumentAssignmentRule
The document assignment rule specified within the template.
DocumentAssignmentRule() as String
Modifiability: Read only

DocumentNamingRule
The document naming rule specified within the template.
DocumentNamingRule() as String
Modifiability: Read only

Drawing by Rule API Programming Guide 15


Document Wrapper Class

SheetAssignmentRule
The sheet assignment rule specified within the template.
SheetAssignmentRule() as String
Modifiability: Read Only

SheetNamingRule
The sheet naming rule specified within the template.
SheetNamingRule() as String
Modifiability: Read Only

SnapIn
The snap-in class wrapper to which this template belongs.
SnapIn() as IJDBRSnapInW
Modifiability: Read Only

Document Wrapper Class


A drawings by rule automation document class wrapper that aggregates the
DwgByRuleDocument business object. After the business object is set, you can use this wrapper
when the DwgByRuleDocument business object is also used.
Class: DBRDocumentW
Interfaces: IJDBRDocumentW

IJDBRDocumentW Methods
Each method has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_UNEXPECTED Unknown exception occurred during method execution

16 Drawing by Rule API Programming Guide


Document Wrapper Class

Delete
Deletes the sheet business object associated with this document class wrapper.
Delete()
This method has no parameters.
No other methods or properties should be called on the document class wrapper after
Delete has been called.

RunLayout
Runs the layout on the document.
RunLayout(ByVal pProgress as IJDDwgProgress)

Parameters

[in] pProgress The progress object on which to send messages. You can use a NULL
value.

RunRules
Runs the rules on a document, resulting in the following:
 Runs the collation rule on each view definition in the setup.
 Creates all needed views.
 Generates the preview for all newly created views.
 Assigns the views to the document and runs the layout.
 Creates overflow documents if supported and continues placing views and running layout on
those overflow documents.
 Places any remaining views into the unassigned folder of the snap-in.
 Moves any views no longer needed from the document to the unassigned folder of the snap-in.
RunRules(ByVal pProgress as IJDDwgProgress)

Parameters

[in] pProgress The progress object to send messages to. You can use a NULL value.

For more information on rules, see the followingsections in the Drawings and Reports
Reference Data Guide:
 Collation Rules in Drawings by Rule
 Orientation Rules in Drawings by Rule
 Layout Style Rules in Drawings by Rule

Drawing by Rule API Programming Guide 17


Document Wrapper Class

 Gathering Rules in Drawings by Rule


 Document and Sheet Naming Rules in Drawings by Rule
 View Naming Rules in Drawings by Rule

IJDBRDocumentW Properties
Each property has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

Sheets
The sheet class wrappers within this document.
Sheets() as IJDObjectCollection
Modifiability: Read Only

SnapIn
The snap-in class wrapper to which this document belongs.
SnapIn() as IJDBRSnapInW
Modifiability: Read Only

ViewBuilder
The setup for this document, implemented as an IJXSetUp object.
ViewBuilder() as Object
Modifiability: Read Only

18 Drawing by Rule API Programming Guide


Sheet Wrapper Class

Views
The view class wrappers in this document.
Views() as IJDObjectCollection
Modifiability: Read Only

Sheet Wrapper Class


A drawings by rule automation sheet class wrapper that represents a single RAD sheet within a
RAD document.
Class: DBRSheetW
Interfaces: IJDBRSheetW

IJDBRSheetW Methods
Unless otherwise noted, each method has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

AssignView
Assigns the view to this sheet. This method returns True if the sheet accepts the view or False if
the sheet rejects the view.
AssignView(ByVal pViewW as IJDBRViewW) as Boolean

Parameters

[in] pViewW The view class wrapper to assign.

Drawing by Rule API Programming Guide 19


Sheet Wrapper Class

AssignViews
Assigns the views within the collection to this sheet. Returns a collection of view class wrappers
that are rejected by the sheet.
AssignViews(ByVal pViews as IJDObjectCollection) as IJDObjectCollection

Parameters

[in] pViews The collection of view class wrappers to assign.

RunLayout
Runs the layout on the sheet.
RunLayout(ByVal pProgress as IJDDwgProgress)

Parameters

[in] pProgress The progress object on which to send messages. You can use a NULL
value.

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_UNEXPECTED Unknown exception occurred during method execution

IJDBRSheetW Properties
Each property has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

20 Drawing by Rule API Programming Guide


View Wrapper Class

Regions
The regions contained on this sheet.
Regions() as IJDObjectCollection
Modifiability: Read Only

View Wrapper Class


A drawings by rule automation view class wrapper that aggregates the DwgByRuleView business
object. After the business object is set, you can use this wrapper when the DwgByRuleView
business object is also used.
Class: DBRViewW
Interfaces: IJDBRViewW

IJDBRViewW Methods
Unless otherwise noted, each method has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

GeneratePreview
Generates the preview for the view.
GeneratePreview()
This method has no parameters.

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_UNEXPECTED Unknown exception occurred during method execution

Drawing by Rule API Programming Guide 21


View Wrapper Class

GetViewStyle
Returns the view style object for this view.
GetViewStyle() as IJXViewStyle
This method has no parameters.

Setup
Sets up the view based on the inputs and the view definition.
Setup(ByVal pdispInputs as Object, pViewDef as IJXDBRViewDefinition)

Parameters

[in] pdispInputs The inputs to the view:


 The view style to use
 The view orientation to use
 The view query to use

[in] pViewDef The view definition used to generate this view.

UpdateQueries
Updates the stored query for the view when parameter inputs are different than current inputs.
Returns True when an update occurs or False when an update does not occur.
UpdateQueries(ByVal pdispInputs as Object) as Boolean

Parameters

[in] pdispInputs The inputs to the view:


 The view style to use
 The view orientation to use
 The view query to use

22 Drawing by Rule API Programming Guide


View Wrapper Class

IJDBRViewW Properties
Each property has the following return error codes:

Return Error Codes

NOERROR Operation succeeded

E_FAIL Operation failed (no detail)

E_INVALIDARG Invalid argument encountered during method execution

E_UNEXPECTED Unknown exception occurred during method execution

Sheet
The sheet class wrapper for this view.
Sheet() as IJDBRSheetW
Modifiability: Read Only

Drawing by Rule API Programming Guide 23


Examples

Examples

Document Setup
This sample code shows the calls to the API for running setup at the document level.
try
{
// create a new factory class wrapper to get the snapin
Type TYPE_DBRFactoryW =
Type.GetTypeFromProgID("DrawingByRuleAPI.DBRFactoryW");
API.IJDBRFactoryW oFactoryW =

(API.IJDBRFactoryW)Activator.CreateInstance(TYPE_DBRFactoryW);

// get the snapin by DBID - can also be retrieved by moniker or object


API.IJDBRSnapInW oSnapInW =

oFactoryW.GetSnapIn("{000FDE93-0000-0000-6D01-1669D5521F04}");

// add a new document


API.IJDBRDocumentW oDocumentW = oSnapInW.AddNewDocument();

// get the custom data from the snapin (package information)


string sCustomData = (string) oSnapInW.GetCustomData("Setup");

// create a setup class


Type TYPE_CDBRSetUp =
Type.GetTypeFromProgID("ISDBRScripter.CDBRSetUp");
SCP.IJXDBRSetUp oSetup =
(SCP.IJXDBRSetUp)Activator.CreateInstance(TYPE_CDBRSetUp);

// and load it with the package information and inputs for


//collation rule
LoadInputs(oSetup, sCustomData);

// set the view builder on the document


oDocumentW.ViewBuilder = oSetup;

// create a progress log


Type TYPE_CShipDwgLog2 =
Type.GetTypeFromProgID("ISDrawingsScripter.CShipDwgLog2");
API.IJDDwgProgress oLog =

(API.IJDDwgProgress)Activator.CreateInstance(TYPE_CShipDwgLog2);

// run the document rules


// - collation rule for each view definition will be run
// - all needed views will be created
// - preview will be run for all new views

24 Drawing by Rule API Programming Guide


Examples

// - all new views will be assigned to the document


// - layout will be run on the document
// - if supported and any views remaining, overflow documents
// will be created
// - overflow documents will have views remaining assigned and
// layout run
// - any views rejected by main and overflow documents will be
// placed in unassigned
// - any existing views no longer needed will be placed in unassigned
oDocumentW.RunRules(oLog);

// inform snapin a commit will be done


oSnapInW.PrepareForCommit(true);
}

Drawing by Rule API Programming Guide 25


Index
IJDBRSnapInW Methods • 10
A IJDBRSnapInW Properties • 13
IJDBRTemplateW Methods • 14
AddNewDocument • 10 IJDBRTemplateW Properties • 15
AddUnassignedView • 10 IJDBRViewW Methods • 21
AddUnassignedViews • 10 IJDBRViewW Properties • 23
AssignView • 19
AssignViews • 20
O
C Overview • 5
CreateGraphicView • 7
CreateSnapIn • 8 P
PrepareForCommit • 12
D
Delete • 17 R
Document Setup • 24 Regions • 21
Document Wrapper Class • 16 RemoveUnassignedView • 12
DocumentAssignmentRule • 15 RunLayout • 17, 20
DocumentNamingRule • 15 RunRules • 17
Documents • 14
S
E SetCustomData • 13
Examples • 24 SetCustomDataFile • 13
Setup • 22
F Sheet • 23
Sheet Wrapper Class • 19
Factory Wrapper Class • 7 SheetAssignmentRule • 16
SheetNamingRule • 16
G Sheets • 18
GeneratePreview • 21 SnapIn • 16, 18
GetCustomData • 11 SnapIn Wrapper Class • 9
GetCustomDataFile • 11
GetDBRObjectStorage • 8 T
GetDocument • 11 Template • 14
GetNewDocument • 15 Template Wrapper Class • 14
GetSnapIn • 9
GetTemporaryFileName • 9
GetView • 12 U
GetViewStyle • 22 UpdateQueries • 22

I V
IJDBRDocumentW Methods • 16 View Wrapper Class • 21
IJDBRDocumentW Properties • 18 ViewBuilder • 18
IJDBRFactoryW Methods • 7 Views • 19
IJDBRSheetW Methods • 19
IJDBRSheetW Properties • 20

Drawing by Rule API Programming Guide 27

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy