// **********************************************************************
|
//
|
// Copyright (c) 2008-2023 VCI-Tech, Inc. All rights reserved.
|
//
|
// This copy of Ice is licensed to you under the terms described the
|
// ICE_LICENSE file included this distribution.
|
//
|
// **********************************************************************
|
|
#pragma once
|
|
#include "01-common.ice"
|
#include "05-omd.ice"
|
|
[["java:package:com.vci.corba"]]
|
["cs:namespace:com.vci.corba"]
|
|
// module com {
|
// module vci {
|
// module corba {
|
module query{
|
module data {
|
struct KV{
|
string key;
|
string value;
|
};
|
sequence<KV> KVArray;
|
sequence<KVArray> KVArray2D;
|
|
struct BOAndLO{
|
string btmName;
|
omd::data::BusinessObject bo;
|
string ltName;
|
omd::data::LinkObject lo;
|
};
|
sequence<BOAndLO> BOAndLOArray;
|
|
struct BOsAndLO{
|
string btNameF;
|
omd::data::BusinessObject boF;
|
string btNameT;
|
omd::data::BusinessObject boT;
|
string ltName;
|
omd::data::LinkObject lo;
|
};
|
sequence<BOAndLO> BOsAndLOArray;
|
|
// add by xchao 2017.12.20 begin
|
// 业务类型参照查询选项
|
struct BtmRefQueryOption{
|
// 属性名称
|
string attrName;
|
// 参照的业务类型, 如果没有指定则按 attrName 到属性池中查属性关联参照的业务类型
|
string refBtmName;
|
// 要人参照的业务类型中查询的属性
|
common::data::StringArray refBtmQueryAttrs;
|
};sequence<BtmRefQueryOption> BtmRefQueryOptionArray;
|
// add by xchao 2017.12.20 end
|
|
struct RefValue{
|
long row;
|
string value;
|
};//Value
|
sequence<RefValue> RefValueArray;
|
|
struct RefPath{
|
RefValueArray values;
|
string path;
|
};//Path
|
sequence<RefPath> PathArray;
|
};
|
|
interface ObjectQueryService{
|
void test();
|
|
//根据查询模板名, 查询模板数据查询业务对象
|
omd::data::BusinessObjectList findBTMObjects(string qtName, string qtText)throws common::VCIError;
|
//根据查询模板名, 查询模板数据查询业务对象-v2
|
// qtName: 查询模板名称(id)
|
// qtText:结构化QueryTemplate的文本内容(包含查询条件(值)、替换条件(值)、分页信息、排序信息)
|
// out: 输出参数,查得的数据总数
|
omd::data::BusinessObjectList findBTMObjectsV2(string qtName, string qtText, out long count)throws common::VCIError;
|
|
// 根据查询模板名, 查询模板数据查询业务对象-v3 : 查BO的同时,根据参照查询选项,查询参照数据
|
// qtName: 查询模板名称(id)
|
// qtText:结构化QueryTemplate的文本内容(包含查询条件(值)、替换条件(值)、分页信息、排序信息)
|
// out: 输出参数,查得的数据总数
|
// btmRefQueryOptions: 参照数据查询选项
|
omd::data::BusinessObjectList findBTMObjectsV3(string qtName, string qtText, data::BtmRefQueryOptionArray btmRefQueryOptions, out long count)throws common::VCIError;
|
|
//根据业务类型名, 版本查询业务对象
|
//version: 0:所有版次; 1:当前版本当前版次; 2:当前版本最新版次; 3:最新版本最新版次.
|
omd::data::BusinessObjectList findBTMObjectsByTypeNameAndVersion(string typeName, short version)throws common::VCIError;
|
|
//根据查询模板名, 查询模板数据查询链接对象
|
omd::data::LinkObjectList findLTObjects(string qtName, string qtText)throws common::VCIError;
|
|
//根据查询模板名, 查询模板数据查询链接对象-v2
|
// qtName: 查询模板名称(id)
|
// qtText:结构化QueryTemplate的文本内容(包含查询条件(值)、替换条件(值)、分页信息、排序信息)
|
// out: 输出参数,查得的数据总数
|
omd::data::LinkObjectList findLTObjectsV2(string qtName, string qtText, out long count)throws common::VCIError;
|
|
//根据查询模板名, btOId获取linkObject 和 关联的businessObject
|
data::BOAndLOArray getBOAndLOS(string qtName, string qtText, string btmOId)throws common::VCIError;
|
|
//根据查询模板名, btOId获取linkObject 和 关联的businessObject
|
//weidy@2021-1-6 暂时屏蔽这个接口
|
//BOsAndLOArray getBOsAndLOS(string qtName, string qtText, string btmOId)throws common::VCIError;
|
|
//根据查询模板名, 查询模板信息返回查询总数
|
long findTotalCount(string qtName, string qtText)throws common::VCIError;
|
|
//用标准sql查询数据
|
data::KVArray2D queryBySql(string sql)throws common::VCIError;
|
|
//用标准sql查询数据
|
common::data::StringArray2D queryBySqlWithoutKey(string sql)throws common::VCIError;
|
|
//使用标准sql查询数据(基于绑定变量的实现)
|
common::data::StringArray2D queryBySqlAndValuesWithoutKey(string sql, common::data::StringArray paramValues)throws common::VCIError;
|
|
// 参照查询方法================
|
//获取业务对象参照属性值
|
data::PathArray getRefQueryResults(data::PathArray paths)throws common::VCIError;
|
//获取链接对象的参照属性值
|
data::PathArray getRefResults(data::PathArray paths,string toType)throws common::VCIError;
|
//获取链接对象的参照属性
|
data::PathArray getRefTypesResults(data::PathArray paths, common::data::StringArray types) throws common::VCIError;
|
|
};
|
}
|
// }}}
|