阅读排行榜

评论排行榜

1. 发布TCIS 制造业PLM行业解决方案2.0版本(41) 2. PDM行业解决方案势在必行(39) 3. 结构静力分析边界条件施加方法与技巧——约束实例篇(35) 4. 收购来的3D软件买得起,“养”得起吗?(28) 5. 谁来做国家信息化规划?(27) 6. 结构设计CAE主业务流程(21) 7. 大连重工起重CAE简介(20) 8. CAE在产品生命周期中的作用(19) 9. CAE人当卧薪尝胆(19) 10. 有感而发老外索要CAE模型(15) 11. I-deas软件将何去何从?(14) 12. 项目“难产”谁的错?-1(14) 13. PDM应脱下昂贵的“外衣”(2)(13) 14. 为什么我们也用世界一流水平的软件却设计不出世界一流的产品?(13) 15. 结构静力分析边界条件施加方法与技巧——载荷实例篇(11) 16. 机构柔性体分析(11) 17. 项目“难产”谁的错?-2(11) 18. 感受2011中国CAE年会(11) 19. CAE技术认识的三大误区(10) 20. 热—固耦合分析(10) 21. “快 快 快 ”都是“快”字惹的祸(10) 22. 关于11.5节能减排答记者问(9) 23. 制定CAE行业标准势在必行(9) 24. 当今CAE技术推广应用需要解决的问题(9) 25. 3D推广应用到底难在哪?(9) 26. 大连重工起重PDM应用情况简介(8) 27. 发布《PDM制造业行业解决方案1.0版》(8) 28. 有限元软件与CAD软件的融合(8) 29. PDM普及策略之“瘦身计划”-1(8) 30. 企业在信息化认识上的几大误区(8) 31. 国际上的移动式散料连续搬运设备设计标准(7) 32. 企业领导层的培训对信息化推广使用影响极大(7) 33. PDM应脱下昂贵的“外衣”(1)(7) 34. 海工装备这块蛋糕不是所有企业都适合吃的(7) 35. TCUA9.1开发的问题,待解决?(7) 36. 结构动力学分析方法及应用实例(7) 37. 结构疲劳分析方法及应用(7) 38. 制造业3D设计实施前期的关键因素(7) 39. 结构设计CAE建模技巧-2(6) 40. 关于CAE数据流与ERP数据流之区别(6)

最新评论

总感觉那个叫啥晓峰的回复,总是不那么切题,貌似只看到了最基础的用处 --【匿名用户】:E-works热心网友
这是个好建议! --【匿名用户】:E-works鐑績缃戝弸
所以国内企业要的就是灵活不是标准。 --【匿名用户】:E-works热心网友
写进BOM的都是标准成本,实际业务中按照标准成本来的有多少啊。 --【匿名用户】:E-works热心网友
这个有这个复杂? --【匿名用户】:E-works热心网友
建议还是挺好的。 --苌晓峰
这个分享还是蛮不错的吗! --苌晓峰
太简单了啊 --苌晓峰
分享 --苌晓峰
真正用得时候,谁还会想到这个啊 --苌晓峰

SBO的查询接口详细分析解剖
本文标签: SAP SBO ERP 

工欲善其事,必先利其器。知己知彼,百战不殆!
SBO的查询接口是SBO开发的一个综合性的查询工具,主要作用总结一下可以分三方面:一般的查询;用于定值一些简单报表的查询;用于格式化搜索的查询。一般关键的注意点有以下几个方面:
1、一般情况下,这个查询接口支持大约4000多个字符以内的sql语句查询,如果超过,就建议使用存储过程了。当然为了使SBO升级不出现问题(以前的版本SBO升级时会因为存储过程出问题),在升级前最好Drop这些存储过程,然后升级完成后补进去。
2、关于参数的问题,SBO查询接口引入一种特殊的参数传递机制,即'[%0]','[%1]'...,以前的版本没有引号,要注意不同版本升级造成的替换问题。
3、对于复杂查询逻辑的参数传递问题:大家最好先定义查询sql变量,然后对这些变量使用SBO参数赋值,然后在你的复杂查询逻辑中直接使用这些变量来传递参数,这种方法对调用存储过程等方面有很大好处,就是可以解决SBO的条件选择框的问题。例如:
declare  @itemfrom nvarchar(20)
declare  @itemto nvarchar(20)
declare  @count int
select @count=count(t0.itemcode) from OITM T0 where T0.itemcode= '[%0]' or T0.itemcode= '[%1]'
set @itemfrom= '[%0]'
set @itemto= '[%1]'
select itemcode '物料代码',itemname '物料名称' from oitm where ((itemcode>=@itemfrom) or (@itemfrom is null) or (@itemfrom='')  )and ((itemcode<=@itemTo) or (@itemTo is null)or (@itemTo=''))
4、对于字符型参数,最好加上or (@itemTo is null)or (@itemTo=''),这样条件就更灵活。对于数值参数采用(@itemTo is null)or (@itemTo=0)
5、对于SBO查询接口做报表,一般只能做一些简单的一维的报表。对于主细结构的报表就不好使了。不知哪位大虾有这方面的经验分享一下。
6、对于研发人员来说,如果开发的程序涉及到查询,希望在安装过程中直接安装到SBO系统里,方法有两个,一个是使用SDK,一个是直接插入。不过直接插入还是有风险的。但速度快。例子如下

declare @maxQCategory int
declare @maxQnum int
Declare @maxIDX int
declare @sql nvarchar(4000)

select @maxQCategory=isnull(max([CategoryId]),0)+1 from [OQCN]
delete from [OQCN] where [CatName]=N'自定义报表'
insert into [OQCN]([CategoryId], [CatName], [PermMask], [DataSource], [UserSign])
values(@maxQCategory,N'自定义报表','YYYYYYYYYYYYYYY','N',Null)  
--说明OQCN主要存放您的报表的查询类别。
--报表1
--OUQR主要存放您的自定义查询。要注意IntrnalKey自动加1。
select @maxQnum=isnull(max(IntrnalKey),0)+1 from OUQR  --where QCategory=@maxQCategory
delete from [OUQR] where [QName]=N'您的报表'
insert into [OUQR]([IntrnalKey], [QCategory], [QName], [QString], [QType], [ColumnSize])
values(@maxQnum,@maxQCategory,N'您的报表',N'declare  @itemfrom nvarchar(20)
declare  @itemto nvarchar(20)
declare  @count int
select @count=count(t0.itemcode) from OITM T0 where T0.itemcode=  '+''''+'[%0]'+''''+' or T0.itemcode= '+''''+'[%1]'+''''+'
set @itemfrom= '+''''+'[%0]'+''''+'
set @itemto=  '+''''+'[%1]'+''''+'
select itemcode '物料代码',itemname '物料名称' from oitm where ((itemcode>=@itemfrom) or (@itemfrom is null) or (@itemfrom=+''''+''''+))and ((itemcode<=@itemTo) or (@itemTo is null)or (@itemTo=+''''+''''+))','W','RnNNNZFFTNTZNNFFFNFFNNRRRRNN')

希望这个文档对顾问或研发有所帮助。至于SBO的查询接口究竟能在项目中做到什么程度,但就看我们的功底如何了。尤其是SQL的水平。我的建议是在SBO这个产品上对顾问的SQL水平是必须的一个基本技能。
发表于: 2008-11-23 14:11 秋声 阅读(1815) 评论(1) 收藏 好文推荐
# re: SBO的查询接口详细分析解剖
2011-10-21 13:19 | 苌晓峰 | 1楼
分享

发表评论(网友发言只代表个人观点,不代表本网站观点或立场。)

您尚未登录,请先【登录或注册