ludc
2025-01-16 68fd566d21b3efc3a670a5295289b1801f5a4155
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
 
#ifndef OMD
#define OMD
 
#include "01-base.idl"
 
module com {
    module vci {
        module corba{
            module omd {
 
                module ddl{
                    interface DDLService{
                        boolean generatorODDLForBt(in wstring apContent, in wstring btContent);
                        boolean generatorSDDLForBt(in wstring apContent, in wstring btContent);
                        boolean generatorODDLForLt(in wstring apContent, in wstring ltContent);
                        boolean generatorSDDLForLt(in wstring apContent, in wstring ltContent);
                    
                        //创建, 修改, 删除业务类型Table
                        boolean executeUpdateOracle(in wstring sql);
                        boolean executeUpdateSQLServer(in wstring sql);
                        //批量执行sql
                        boolean batchExecuteUpdateOracle(in common::data::WStringArray sqlArray);
                        boolean batchExecuteUpdateSQLServer(in common::data::WStringArray sqlArray);
                        
                        //记录修改Table DDL(alter table t add(column type)
                        boolean alterTableDDLOracle(in wstring sql);
                        boolean alterTableDDLSQLServer(in wstring sql);
                        
                        //检查业务类型, 链接类型在数据库中是否已有数据对象
                        boolean hasInstanceOralce(in wstring name);
                        boolean hasInstanceSQLServer(in wstring name);
                    };
                };
 
                // 枚举类型管理
                module enumManager{
                
                    struct EnumChild{
                        wstring name;
                        wstring value;
                        wstring description;
                    };
                    typedef sequence<EnumChild> EmChildren;
                    struct EnumItem{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring name;
                        wstring label;
                        wstring type;
                        long length;
                        EmChildren children;
                    };
                    typedef sequence<EnumItem> EnumItemArray;
                    struct EnumItemFilter{
                        wstring name;
                    };
                    
                    interface EnumService{
                        //增加枚举
                        boolean addEmItem(in EnumItem ei)raises (com::vci::corba::common::VCIError);
                        boolean addEmItemNoCache(in EnumItem ei)raises (com::vci::corba::common::VCIError);
                        //修改枚举
                        boolean modifyEmItem(in EnumItem ei)raises (com::vci::corba::common::VCIError);
                        //删除枚举
                        boolean deleteEmItem(in EnumItem ei)raises (com::vci::corba::common::VCIError);
                        boolean deleteEmItemNoCache(in EnumItem ei)raises (com::vci::corba::common::VCIError);
                        boolean deleteEmItems(in EnumItemArray eis)raises (com::vci::corba::common::VCIError);
                        //查询枚举
                        EnumItemArray getEmItems(in EnumItemFilter filter, in long start, in long rows)raises (com::vci::corba::common::VCIError);
                        //检查枚举名是否存在
                        boolean checkRowIsExists(in wstring name)raises (com::vci::corba::common::VCIError);
                        //根据枚举类型查询枚举
                        EnumItemArray getEmItemsByType(in wstring type)raises (com::vci::corba::common::VCIError);
                        //根据枚举名字查询枚举
                        EnumItem getEmItemByName(in wstring name)raises (com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                    };
                };
                
                // 属性定义管理接口
                module attribpool{
                    struct AttribItem{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring name;
                        wstring label;
                        wstring description;
                        wstring vtDataType;
                        wstring defValue;
                        wstring rage;
                        wstring other;
                    };
                    typedef sequence<AttribItem> AttribItemArray;
                    struct AttribItemFilter{
                        wstring name;
                    };
 
                    interface AttPoolService{
                        //添加属性项
                        boolean addAttribItem(in AttribItem attr)raises (com::vci::corba::common::VCIError);
                        boolean addAttribItemNoCache(in AttribItem attr)raises (com::vci::corba::common::VCIError);
                        //修改属性项
                        boolean modifyAbItem(in AttribItem attr)raises (com::vci::corba::common::VCIError);
                        //删除参数列表中的属性项
                        boolean deleteAbItems(in AttribItemArray attrs)raises (com::vci::corba::common::VCIError);
                        boolean deleteAbItem(in AttribItem attr)raises (com::vci::corba::common::VCIError);
                        boolean deleteAbItemNoCache(in AttribItem attr)raises (com::vci::corba::common::VCIError);
                        //查询属性项
                        AttribItemArray getAttribItems(in AttribItemFilter filter, in long start, in long rows)raises (com::vci::corba::common::VCIError);
                        //根据属性名列表查询属性项
                        AttribItemArray getAttribItemsByNames(in common::data::WStringArray abNameArray)raises (com::vci::corba::common::VCIError);
                        //查询不在参数列表中的属性项
                        AttribItemArray getAttribItemsOutNames(in common::data::WStringArray abNameArray,in wstring text)raises (com::vci::corba::common::VCIError);
                        //检查要插入的记录是否存在
                        boolean checkRowIsExists(in wstring name)raises (com::vci::corba::common::VCIError);
                        //根据属性名获取属性
                        AttribItem getAttribItemByName(in wstring abName)raises(com::vci::corba::common::VCIError);                
                        //根据属性名获取属性数据类型
                        wstring getAttribItemDataType(in wstring abName)raises(com::vci::corba::common::VCIError);
                        //提供AP数据文件内容
                        wstring getAPData()raises(com::vci::corba::common::VCIError);
                        //获取使用指定枚举名的属性名列表
                        common::data::WStringArray getAPNamesByEMName(in wstring emName)raises(com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                    };
                };
                // 状态管理接口
                module statePoolManager{
 
                    struct StatePool{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring id;
                        wstring name;
                        wstring tag;
                        wstring imagePath;
                        wstring description;
                    };
                    typedef sequence<StatePool> StatePoolArray;
                    
                    interface StatePoolService{
                        //增加statePool
                        boolean addStatePool(in StatePool state)raises (com::vci::corba::common::VCIError);
                        //修改statePool
                        boolean modifyStatePool(in  StatePool state)raises (com::vci::corba::common::VCIError);
                        //删除statePool
                        boolean deleteStatePool(in  StatePool state)raises (com::vci::corba::common::VCIError);
                        //删除statePools
                        boolean deleteStatePools(in StatePoolArray states)raises (com::vci::corba::common::VCIError);
                        //获取所有的statePool
                        StatePoolArray getStatePools()raises (com::vci::corba::common::VCIError);
                        //获取statePool
                        StatePool getStatePool(in wstring name)raises (com::vci::corba::common::VCIError);
                        
                        common::data::WStringArray getImagePaths()raises (com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                    };
                };
 
                // 生命周期模型管理
                module lifecycleManager{
                    struct Bound{
                        wstring id;
                        wstring name;
                        wstring cellx;
                        wstring celly;
                        wstring cellw;
                        wstring cellh;
                        wstring cellicon;
                    };
                    typedef sequence<Bound> BoundArray;
                    struct TransitionVOEvent{
                        wstring id;
                        wstring name;
                    };
                    typedef sequence<TransitionVOEvent> TransitionVOEventArray;
                    struct TransitionVO{
                        wstring id;
                        wstring source;
                        wstring destination;
                        wstring connect;
                        TransitionVOEventArray transitionVOEvents;
                    };
                    typedef sequence<TransitionVO> TransitionVOArray;
                    struct LifeCycle{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring id;
                        wstring name;
                        wstring tag;
                        wstring description;
                        wstring startState;
                        BoundArray bounds;
                        TransitionVOArray routes;
                    };
                    typedef sequence<LifeCycle> LifeCycleArray;
                    
                    struct PropertyInfo{
                        wstring property;
                        wstring value;
                    };
                    typedef sequence<PropertyInfo> PropertyInfoList;
                    //事务历史记录
                    struct TransationHistoryRecord{
                        wstring id;
                        wstring name;
                        TransitionVO transationVO;
                        wstring btmName;
                        wstring transationTime;
                        wstring userName;
                    };
                    typedef sequence<TransationHistoryRecord> TransationHistoryRecords;
                    
                    interface LifeCycleService{
                        //增加生命周期
                        boolean addLifeCycle(in LifeCycle lc)raises (com::vci::corba::common::VCIError);
                        //修改生命周期
                        boolean modifyLifeCycle(in LifeCycle lc)raises (com::vci::corba::common::VCIError);
                        //删除生命周期
                        boolean deleteLifeCycle(in LifeCycle lc)raises (com::vci::corba::common::VCIError);
                        //获取所有的生命周期
                        LifeCycleArray getLifeCycles()raises (com::vci::corba::common::VCIError);
                        //获取指定的生命周期
                        LifeCycle getLifeCycle(in wstring name)raises (com::vci::corba::common::VCIError);
                        wstring getLifeCycleEventPath()raises (com::vci::corba::common::VCIError);
                        wstring getLifeCycleEventViewPath()raises (com::vci::corba::common::VCIError);
                        wstring getLifeCycleEventViewSavePath()raises (com::vci::corba::common::VCIError);
                        
                        wstring get_lifecycle_event_path()raises (com::vci::corba::common::VCIError);
                        
                        //记录事务历史
                        boolean recordTransitionHistory(in TransationHistoryRecord thr)raises (com::vci::corba::common::VCIError);
                        
                        //执行事务
                        //void excuteTransitionEvents (in TransitionVO transitionVO)raises (com::vci::corba::common::VCIError);
                        
                        //获取事件key
                        common::data::WStringArray getLCEventKeys()raises (com::vci::corba::common::VCIError);
                        //获取事件value
                        wstring getLCEventValueByKey(in wstring key)raises(com::vci::corba::common::VCIError);
                        //删除生命周期
                        boolean deleteLifeCycles(in LifeCycleArray lcs)raises (com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                    };
                };
                // 版本规则管理接口
                module versionRuleManager{
                    struct VersionRule{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring id;
                        wstring name;
                        wstring tag;
                        wstring jumpCharacter;
                        wstring initialValue;
                        wstring stepLength;
                        wstring prefixion;
                        wstring suffix;
                        wstring description;
                        wstring associated;
                    };
                    typedef sequence<VersionRule> VersionRuleArray;
 
                    interface VersionRuleService{
                        //增加VersionRule
                        boolean addVersionRule(in VersionRule vr)raises (com::vci::corba::common::VCIError);
                        //修改VersionRule
                        boolean modifyVersionRule(in  VersionRule vr)raises (com::vci::corba::common::VCIError);
                        //删除VersionRule
                        boolean deleteVersionRule(in  VersionRule vr)raises (com::vci::corba::common::VCIError);
                        //获取所有的VersionRules
                        VersionRuleArray getVersionRules()raises (com::vci::corba::common::VCIError);
                        //删除VersionRules
                        boolean deleteVersionRules(in VersionRuleArray vrs)raises (com::vci::corba::common::VCIError);
                        //获取指定的VersionRules
                        VersionRule getVersionRule(in wstring name)raises (com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                    };
                };
 
                // 业务类型管理接口
                module btm{
                    // 业务类型
                    struct BtmItem{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring name;
                        wstring label;
                        wstring description;
                        boolean isAbstract;
                        wstring fName;
                        wstring implClass;
                        wstring shape;
                        wstring lifeCycle;
                        common::data::WStringArray lifeCycles;
                        wstring imageName;
                        long revLevel;
                        wstring revRuleName;
                        //是否手工输入版本号规则
                        boolean revInput;
                        wstring delimiter;
                        long verRuleName;
                        common::data::WStringArray apNameArray;
                    };
                    typedef sequence<BtmItem>  BtmItemArray;
 
                    struct BtmAndApName{
                        wstring btmName;
                        common::data::WStringArray apName;
                    };
                    typedef sequence<BtmAndApName> BtmAndApNameArray;
 
                    interface BTMService{
                        //获取全部业务类型
                        BtmItemArray getAllBtmItem(in wstring filter) raises (com::vci::corba::common::VCIError);
                        //获取当前业务类型的子类型
                        BtmItemArray getChildrenBtms(in wstring btmName) raises (com::vci::corba::common::VCIError);
                        //获取指定的业务类型
                        BtmItem getBtmItemByName(in wstring btmName)raises(com::vci::corba::common::VCIError);
                        //获取属性名和对应的业务类型名
                        BtmAndApNameArray getBtmAndApNameArray(in wstring btmName)raises(com::vci::corba::common::VCIError);
                        //增加业务类型
                        boolean addBtmItem(in BtmItem bt)raises(com::vci::corba::common::VCIError);
                        boolean addBtmItemNoCache(in BtmItem bt)raises(com::vci::corba::common::VCIError);
                        //修改业务类型
                        boolean updateBtmItem(in BtmItem bt)raises(com::vci::corba::common::VCIError);
                        //删除业务类型
                        boolean deleteBtmItem(in BtmItem bt)raises(com::vci::corba::common::VCIError);
                        boolean deleteBtmItemNoCache(in BtmItem bt)raises(com::vci::corba::common::VCIError);
                        //检查要插入的记录是否存在
                        boolean checkRowIsExists(in wstring name)raises (com::vci::corba::common::VCIError);
                        //获取业务类型的属性名列表
                        common::data::WStringArray getBtmApNameArray(in wstring btmName)raises(com::vci::corba::common::VCIError);
                    
                        // 获取指定类型的所有属性
                        attribpool::AttribItemArray getAttributes(in wstring btName)raises(com::vci::corba::common::VCIError);
                        //提供BTM数据文件内容
                        wstring getBTMData()raises(com::vci::corba::common::VCIError);
                        //根据属性名获取使用该属性名的全部业务类型名
                        common::data::WStringArray getBTMNamesByAPName(in wstring apName)raises(com::vci::corba::common::VCIError);
                        //根据版本规则名获取使用该版本规则的全部业务类型名
                        common::data::WStringArray getBTMNamesByVerName(in wstring verName)raises(com::vci::corba::common::VCIError);
                        //根据生命周期名获取使用该生命周期的全部业务类型名
                        common::data::WStringArray getBTMNamesByLCyName(in wstring lCyName)raises(com::vci::corba::common::VCIError);
                        //获取服务端图片路径后缀
                        common::data::WStringArray getImagePaths()raises(com::vci::corba::common::VCIError);
                        //获取业务类型的子类型名
                        common::data::WStringArray getChildrenNames(in wstring btmName)raises(com::vci::corba::common::VCIError);
                        //业务类型与数据库一致性检查
                        common::data::WStringArray btmConsistencyCheck()raises(com::vci::corba::common::VCIError);
                        //执行修复的sql
                        common::data::WStringArray executeRepair(in common::data::WStringArray sqlArray)raises(com::vci::corba::common::VCIError);
                    
                        // 创建业务对象表
                        boolean createTable(in wstring btmName)raises(com::vci::corba::common::VCIError);
                        //创建业务类型视图
                        boolean createView()raises(com::vci::corba::common::VCIError);
                        //清空表中数据
                        boolean truncateTable(in wstring tableName)raises(com::vci::corba::common::VCIError);
                        //清空表中数据
                        boolean deleteTable(in wstring tableName)raises(com::vci::corba::common::VCIError);
                        //清空业务表, 业务类型
                        boolean deleteBtsAndTables(in BtmItemArray bts)raises(com::vci::corba::common::VCIError);
                        //清空业务类型
                        boolean deleteBtmItems(in BtmItemArray bts)raises(com::vci::corba::common::VCIError);
                        //获取表中fields中不能 删除的字段
                        common::data::WStringArray getUnRemovableFields(in wstring tableName, in common::data::WStringArray fields)raises(com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                        //若表tableName不存在,则用createSql创建表
                        boolean checkTable(in wstring tableName, in wstring createSql)raises(com::vci::corba::common::VCIError);
                    
                        // 查询指定对象是否存在实例数据
                        boolean hasData(in wstring btName)raises(com::vci::corba::common::VCIError);
                    };
                    interface BTMFactory {
                        BTMService getBTMService() raises (com::vci::corba::common::VCIError);
                    };
                };
 
                // 链接类型管理接口
                module linkTypeManager{
                    
                    struct LinkType{
                        wstring oid;
                        wstring ts;
                        wstring creator;
                        wstring createTime;
                        wstring modifier;
                        wstring modifyTime;
                        wstring id;//链接类型唯一标识
                        wstring name;//链接类型名称
                        wstring tag;//链接类型标签
                        wstring description;//描述
                        common::data::WStringArray btmItemsFrom;//From端业务类型名称集合
                        common::data::WStringArray btmItemsTo;//to端业务类型名称集合
                        wstring primitivesFrom;//from端主类型
                        wstring primitivesTo;//to端主类型
                        wstring relationFrom;//from端关系
                        wstring relationTo;//to端关系
                        wstring relation;
                        wstring implClass;//实现类
                        wstring shape;//形状
                        common::data::WStringArray attributes;//属性名称集合
                    };
                    typedef sequence<LinkType> LinkTypeArray;
                    
                    interface LinkTypeService{
                        /**添加链接类型**/
                        boolean addLinkType(in LinkType lt)raises (com::vci::corba::common::VCIError);
                        boolean addLinkTypeNoCache(in LinkType lt)raises (com::vci::corba::common::VCIError);
                        /**修改链接类型**/
                        boolean modifyLinkType(in LinkType lt)raises (com::vci::corba::common::VCIError);
                        /**删除链接类型**/
                        boolean deleteLinkType(in LinkType lt)raises (com::vci::corba::common::VCIError);
                        boolean deleteLinkTypeNoCache(in LinkType lt)raises (com::vci::corba::common::VCIError);
                        /**获取所有链接类型集合**/
                        LinkTypeArray getLinkTypes()raises (com::vci::corba::common::VCIError);
                        /**获取指定的链接类型**/
                        LinkType getLinkType(in wstring name)raises (com::vci::corba::common::VCIError);
                    
                        // 获取指定类型的所有属性
                        attribpool::AttribItemArray getAttributes(in wstring ltName)raises(com::vci::corba::common::VCIError);
                        /**(对外)提供链接类型的数据文件数据**/
                        wstring getLTData()raises(com::vci::corba::common::VCIError);
                        /**获取使用指定属性的链接类型名称**/
                        common::data::WStringArray getLTNamesByAPName(in wstring apName)raises(com::vci::corba::common::VCIError);
                        //业务类型与数据库一致性检查
                        common::data::WStringArray linkTypeConsistencyCheck()raises(com::vci::corba::common::VCIError);
                        //执行修复的sql
                        common::data::WStringArray executeRepair(in common::data::WStringArray sqlArray)raises(com::vci::corba::common::VCIError);
                    
                        // 创建链接类型数据表
                        boolean createTable(in wstring ltName)raises(com::vci::corba::common::VCIError);
                    
                        //创建链接类型查询全部To/From端业务类型的视图
                        boolean createView()raises(com::vci::corba::common::VCIError);
                        //清空链接表, 链接类型
                        boolean deleteLtsAndTables(in LinkTypeArray lts)raises(com::vci::corba::common::VCIError);
                        //清空链接类型
                        boolean deleteLinkTypes(in LinkTypeArray lts)raises(com::vci::corba::common::VCIError);
                        //模型迁移
                        boolean xml2DB(in wstring userName)raises(com::vci::corba::common::VCIError);
                        //链接类型获取根据业务类型名及方向
                        LinkTypeArray getLinkTypeByBtmName(in wstring btmName, in wstring direction)raises(com::vci::corba::common::VCIError);
                    
                        // 查询指定链接对象是否存在实例数据
                        boolean hasData(in wstring ltName)raises(com::vci::corba::common::VCIError);
                    };
                };
 
                module data {
                    //system conf info
                    struct SystemModelData {
                        versionRuleManager::VersionRuleArray versionRules;
                        statePoolManager::StatePoolArray states;
                        lifecycleManager::LifeCycleArray lifecycles;
                        linkTypeManager::LinkTypeArray linkTypes;
                        enumManager::EnumItemArray enumItems;
                        attribpool::AttribItemArray attrItems;
                        btm::BtmItemArray btmItems;
                    };
 
                    /**属性对象**/
                    struct AttributeValue {
                        wstring attrName; //属性对应数据库表的列名称
                        wstring attrVal; //属性值
                    };
                    typedef sequence<AttributeValue> AttributeValueList;
 
                    /**业务对象**/
                    struct BusinessObject {
                        wstring oid;
                        wstring revisionid;
                        wstring nameoid;
                        wstring btmName;
                        long isLastR;
                        long isFirstR;
                        long isLastV;
                        long isFirstV;
                        wstring creator;
                        wstring createTime;
                        wstring lastModifier;
                        wstring lastModifyTime;
                        wstring revisionRule;
                        wstring versionRule;
                        long revisionSeq;
                        wstring revisionValue;
                        long versionSeq;
                        wstring versionValue;
                        wstring lctId;
                        wstring lcStatus;
                        wstring ts;
                        wstring id;
                        wstring name;
                        wstring description;
                        wstring owner;
                        wstring checkinBy;
                        wstring checkinTime;
                        wstring checkoutBy;
                        wstring checkoutTime;
                        wstring copyFromVersion;
                        AttributeValueList newAttrValList;
                        AttributeValueList hisAttrValList;
                    };//
                    typedef sequence<BusinessObject> BusinessObjectList;
 
                    /**链接对象**/
                    struct LinkObject{
                        wstring oid;
                        wstring creator;
                        wstring createTime;
                        wstring lastModifier;
                        wstring lastModifyTime;
                        wstring fromOid;
                        wstring fromRevisionOid;
                        wstring fromNameOid;
                        wstring fromBTMName;
                        wstring toOid;
                        wstring toRevisionOid;
                        wstring toNameOid;
                        wstring toBTMName;
                        wstring ts;
                        wstring linkTypeName;
                        AttributeValueList newAttrValList;
                        AttributeValueList hisAttrValList;
                    };
                    typedef sequence<LinkObject> LinkObjectList;
 
 
                    /**版本数据对象**/
                    struct RevisionDataInfo {
                        wstring revisionVal;
                        long revisionSeq;
                    };
 
                    /**版次数据对象**/
                    struct VersionDataInfo {
                        wstring versionVal;
                        long versionSeq;
                    };
                };
 
                // 对象模型定义服务
                interface OMDService {
                    //根据传入的业务对象名称,获取对象建模的所有数据(参数为空时,获取所有建模数据)
                    data::SystemModelData getSysModelData(in com::vci::corba::common::data::WStringArray boTypes) raises (com::vci::corba::common::VCIError);
 
                    // 获取DDL服务
                    ddl::DDLService getDDLService() raises (com::vci::corba::common::VCIError);
 
                    // 获取枚举类型服务
                    enumManager::EnumService getEnumService() raises (com::vci::corba::common::VCIError);
 
                    // 获取属性管理服务
                    attribpool::AttPoolService getAttributeService() raises (com::vci::corba::common::VCIError);
 
                    // 获取生命周期状态服务
                    statePoolManager::StatePoolService getStateService() raises (com::vci::corba::common::VCIError);
 
                    // 获取生命周期模型服务
                    lifecycleManager::LifeCycleService getLifeCycleService() raises (com::vci::corba::common::VCIError);
 
                    // 获取版本规则类型服务
                    versionRuleManager::VersionRuleService getVerRuleService() raises (com::vci::corba::common::VCIError);
 
                    // 获取业务类型服务
                    btm::BTMService getBTMService() raises (com::vci::corba::common::VCIError);
 
                    // 获取链接类型服务
                    linkTypeManager::LinkTypeService getLinkTypeService() raises (com::vci::corba::common::VCIError);
 
                };
 
            };//common            
        };
    };
};
 
#endif