QueryServlice是目前查询数据非常好用的服务,但目前在使用过程中由于使用不当产生不少问题,下面将一一解答:



1、在查询一些实体关键字段如实体主键、分录序号时,条件中的别名怎么会变来变去?

     QueryServlice设计中,为了和物理数据库结果解耦以及写的过滤条件中字段表名别名与动态SQL算法解耦,

所有字段并非真实的物理字段,而是使用字段的标识,所有在调用QueryServlice使用 表别名.字段名的做法都是错误的做法。

     a) 实体关键字段(主键、FFormId、FMasterId、序号)的标识生成规则

          业务对象主键标识=业务对象主键字段名

          业务对象类型字段(FFormId)标识=业务对象类型字段名

          基础资料的唯一键字段标识=基础资料唯一键字段名

          分录、子单据头、子单据体主键、序号标识=实体Key_字段名  需要在Select中返回时,返回字段名实体Key_字段名,但如果实体Key_字段名 长度超过30个字符时需要指定字段别名,否则将报标识超长错误。

          注:返回的字段名默认等于标识,标识无超长问题,但返回的字段名必须少于30个字符,所以标识超过30个字符时必须指定别名 

      b)实体上普通字段的标识生成规则

              字段的标识=元数据中字段的标识

      c)非实体上定义的基础资料属性的标识生成规则 

             标识 =基础资料字段标识.属性字段标识   ,返回的字段名默认等于 基础资料字段标识_属性字段标识,超过30个字符

需指定别名,否则报标识错误 

     d)基础资料字段关联的基础资料类型属性的内码的标识生成规则

           标识 =基础资料字段标识.属性字段标识.Id

           如单据上物料(FItemId)的基本计量单位(FBaseUnitId)的内码

           标识 =FItemId.FBaseUnitId.Id

2、实体的表别名生成规则是怎么样的?

       实体表的别名生成规则为  t+实体序号,由于元数据定义过程中序号有可能变化所以 别名是不确定的 

       实体表关联的基础资料表别名 生成规则实体表的别名+随机序号 ,所以别名也是不确定的 

      所以在排序、过滤条件中不能直接使用别名+字段,应该使用字段标识,查询服务会自动进行翻译转换

[K3Cloud] QueryService使用注意事项的更多相关文章

  1. jQuery UI resizable使用注意事项、实时等比例拉伸及你不知道的技巧

    这篇文章总结的是我在使用resizable插件的过程中,遇到的问题及变通应用的奇思妙想. 一.resizable使用注意事项 以下是我在jsfiddle上写的测试demo:http://jsfiddl ...

  2. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  3. TODO:Golang指针使用注意事项

    TODO:Golang指针使用注意事项 先来看简单的例子1: 输出: 1 1 例子2: 输出: 1 3 例子1是使用值传递,Add方法不会做任何改变:例子2是使用指针传递,会改变地址,从而改变地址. ...

  4. app开发外包注意事项,2017最新资讯

    我们见过很多创业者,栽在这app外包上.很多创业者对于app外包这件事情不是特别重视,以为将事情交给app外包公司就完事了,实际上不是的.无论是从选择app外包公司还是签订合同.售后维护等各方面都有许 ...

  5. favicon.ioc使用以及注意事项

    1.效果 2.使用引入方法 2.1 注意事项:(把图标命名为favicon.ico,并且放在根目录下,同时使用Link标签,多重保险) 浏览器默认使用根目录下的favicon.ico 图标(如果你并没 ...

  6. ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项(红字需要留意)

    版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...

  7. 【原】Masonry+UIScrollView的使用注意事项

    [原]Masonry+UIScrollView的使用注意事项 本文转载请注明出处 —— polobymulberry-博客园 1.问题描述 我想实现的使用在一个UIScrollView依次添加三个UI ...

  8. 《连载 | 物联网框架ServerSuperIO教程》- 5.轮询通讯模式开发及注意事项。附:网友制作的类库说明(CHM)

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  9. 《连载 | 物联网框架ServerSuperIO教程》- 6.并发通讯模式开发及注意事项

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

随机推荐

  1. 转】MongoDB 自动分片 auto sharding

    原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/4/ 感谢! MongoDB 自动分片 auto shard ...

  2. AJPFX区分this和super

    this和super的区别No.区别thissuper1操作属性this.属性:表示调用本类中的属性,如果本类中的属性不存在,则从父类查找super.属性:表示调用父类中的属性2操作方法this.方法 ...

  3. IDEA安装使用

    下载地址: https://www.jetbrains.com/idea/download/previous.html 这里我下载的是:2016.3.8版本的 安装: 安装成功后,需要秘钥的话,在 h ...

  4. VM virtualBox设置无缝全屏

    设置之前:

  5. outlook 插件:导出rss的link地址

    由于对于rss的应用程序不熟悉,所以使用Outlook接收rss.使用过程和平时收邮件没有什么差别. 唯一的遗憾是鉴于安全考虑,outlook没有全部下载网页,所以每次都要打开浏览器.有时候遇到一些需 ...

  6. 看到了一篇不错的tensorflow文章

    http://dataunion.org/28906.html 本文作者 Steven Dufresne,总结了新手学 TensorFlow 需要的核心知识点和实操内容,旨在鼓励更多人借 Tensor ...

  7. 编写图形界面下的Java Swing程序,接受用户输入的两个数据为上下限,然后输出上、下限之间的所有素数。(结果部分每行显示10个数据)

    这个代码我整体写的比较简单,读者可以简单参考一下,对人家题目要求略微修改了一下,多加了一个“置空”按钮.下图为我设计的界面 运行程序后的截图请看我后面的截图: package com.wangshil ...

  8. vim 将文件所有行合并到一行

      vim 将文件所有行合并到一行   在 Normal Mode下执行: ggvGJ gg 用于跳到行首 v 转换成 visual 模式 G 跳到最后一行 J 合并行

  9. 详解 pcap_findalldevs_ex

    pcap是packet capture的缩写.意为抓包. 功能:查找所有网络设备 原型:int pcap_findalldevs_ex(char* source,  struct pcap_rmtau ...

  10. Java集合(二)--Iterator和Iterable

    Iterable: public interface Iterable<T> { Iterator<T> iterator(); } 上面是Iterable源码,只有一个ite ...