display method, edit method, cach display ,security(备查)

Display 方法:

修饰符display所修的方法,其返回值将被作为一个不可以修改的值在form和report上显示。如果你希望这个值可以被编辑,就是要edit方法。

<1> Display方法的书写位置:

Display修饰符可以被用于以下方法:

(1) Table下的方法

(2) Form下的方法

(3) Form data source下的方法

(4) Report下的方法

(5) Report design下的方法

Table下的display方法可以在多个form和report上重用。 Display 方法会在form被重绘时执行。

不要在display方法上写复杂并且耗时的技术或操作。

被隐藏的tab页上的display方法不会被调用。并且,display方法可以被cach起来。

<2> 创建display方法

其格式如下:

将display修饰符放在返回值的前边,并且display方法必须有返回值。如:display Amount amount()

当display方法被写在form data source下时,必须将data source作为参数传递给该display方法。当display的返回值被显示在form的grid control上时,需要将该display方法写在数据源下。如下:

display InventQty accumulated(InventBudgetInvent Budget)

除此之外,display方法不需要参数。

<3> 使用display方法

当作form control和report control上使用display方法时,控件的数据类型和display方法返回值的类型必须一致。

(1) 在form control上使用display

a) 设置control的DataSource属性为该display方法做在的dataSource。如果该属性为空,则默认该display方法被定义在form下。

b) 设置control的DataMethod属性为该display方法的方法名。

同时也可以设置control的ExtendedDataType和ArrayIndex属性。如果ExtendedDataType被设置,则该control会继承该EDT的格式、帮助信息等等。

如果该display方法返回一个array时,将ArrayIndex设置为0表示array的所有元素都会被显示在该control上。如果将ArrayIndex设置为一个非零正数n时,只有数组的第n个元素被显示。

(2) 在report control 上使用display

a) 设置control的Table属性为该display方法所属的table。如果该属性为空,默认该display方法是在report下被定义。

b) 设置control的DataMethod属性为该display方法的方法名。

二.Caching display方法

当display方法是在aos上做计算,或记录需要从服务器端传递到客户端时,可以通过cach来提高display方法的性能。

当数据被从后台数据库获取到后,display方法的的数据会被赋值,当form data source 调用reread方法时,这些数据会被刷新。

将一个display方法cach起来需要通过如下步骤:

1) 定位到使用该display方法的form上

2) Override该display方法所在的data source的Init方法,在该init方法的super()之后,调用FormDataSource.cacheAddMethod方法。cacheAddMethod方法的第一个参数是要被cach的display方法的方法名,第二个参数(默认为true)标识在一条记录被写到数据库时是否更新该display方法。

三. Edit 方法

被edit修饰符所修饰的方法,其返回值可以被显示在form上,同时用户可以编辑这个值。

<1> edit方法的书写位置:

a) Table下的方法

b) Form下的方法

c) Form data source下的方法

Table下的edit方法可以在多个form下重用。

当form在重绘时会调用edit方法,不要在edit方法中写复杂且耗时的操作。

被隐藏的tab页上的edit方法不会被调用。

<2> 创建edit方法

a) 在table下创建edit方法时,其格式如下:

edit FreeTxt txtDefault(boolean Set, FreeTxt Txt)

将edit写在返回值的前边,第一个参数是boolean类型,用于表示用户是否在control中输入或添加了值,第二个参数被用于存放用户所输入的值,该参数的数据类型必须和control的数据类型一致。

b) 在form下创建edit方法时,其格式如下:

edit Amount settle(boolean set, CustTrans _CustTrans, Amount U)

第一个参数是boolean类型,用于表示用户是否在control中输入或添加了值,第二个参数是该edit方法所在的data source,第三个参数用于存放用户所输入或编辑的值,该参数的数据类型必须和control的数据类型一致。

Edit方法也必须有返回值。

<3>edit方法的使用:

当作form control和report control上使用edit方法时,控件的数据类型和edit方法返回值的类型必须一致。

(1) 在form control上使用edit

c) 设置control的DataSource属性为该edit方法做在的dataSource。如果该属性为空,则默认该edit方法被定义在form下。

d) 设置control的DataMethod属性为该edit方法的方法名。

同时也可以设置control的ExtendedDataType和ArrayIndex属性。如果ExtendedDataType被设置,则该control会继承该EDT的格式、帮助信息等等。

如果该edit方法返回一个array时,将ArrayIndex设置为0表示array的所有元素都会被显示在该control上。如果将ArrayIndex设置为一个非零正数n时,只有数组的第n个元素被显示。

可以参考:http://msdn.microsoft.com/en-us/library/aa637541(AX.10).aspx

四.数据的保密性

内核会自动执行Record level security检查,但当时有display和edit方法时会绕过Record level security检查,而在display和edit方法中可以访问一下不在权限内的数据,如果直接将这些数据显示出来,就会失去数据的保密性。所以在使用display和edit方法时,需要显示的做安全检查(如果需要的话)。

原文地址:https://www.cnblogs.com/xtwkh1973/p/10990297.html

时间: 2024-08-02 08:04:35

display method, edit method, cach display ,security(备查)的相关文章

ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

原文:ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view) 在本节中,您将验证电影控制器生成的编辑方法(Edit action methods)和视图.但是首先将修改点代码,使得发布日期属性(ReleaseDate)看上去更好.打开Models \ Movie.cs文件,并添加高亮行如下所示: using System; using System.ComponentModel.DataAnnotations; using System.Data.

[转]ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

在本节中,您将验证电影控制器生成的编辑方法(Edit action methods)和视图.但是首先将修改点代码,使得发布日期属性(ReleaseDate)看上去更好.打开Models \ Movie.cs文件,并添加高亮行如下所示: using System; using System.ComponentModel.DataAnnotations; using System.Data.Entity; namespace MvcMovie.Models { public class Movie

Method and system for providing security policy for linux-based security operating system

A system for providing security policy for a Linux-based security operating system, which includes a template policy module configured to set an authority using policy information of a downloaded application so that the template policy module can set

Python OOP(2)-static method,class method and instance method

静态方法(Static Method): 一种简单函数,符合以下要求: 1.嵌套在类中. 2.没有self参数. 特点: 1.类调用.实例调用,静态方法都不会接受自动的self参数. 2.会记录所有实例的信息,而不是为实例提供行为. 简单说staticmethod 无法访问类属性.实例属性,相当于一个相对独立的方法,跟类其实没什么关系,换个角度来讲,其实就是放在一个类的作用域里的函数而已. #!python2 #-*- coding:utf-8 -*- class A: v1="class ar

『重构--改善既有代码的设计』读书笔记----Replace Method with Method Object

有时候,当你遇到一个大型函数,里面的临时变量和参数多的让你觉得根本无法进行Extract Method.重构中也大力的推荐短小函数的好处,它所带来的解释性,复用性让你收益无穷.但如果你遇到上种情况,你可能会天真的以为我只要适当的进行Replace Temp with Query,就可以把这种现象给化解.但情况往往事与愿违,不能达到你所理想的高度.这个时候你需要用到重构中的杀手锏--Replace Method with Method Object,这个手法出自Kent Beck [Beck].

排球计分程序(八)——验证编辑方法(Edit method)和编辑视图(Edit view)

修改代码,使得发布ReleaseDate看上去更好.打开Balls \ Ball.cs文件using System; using System.ComponentModel.DataAnnotations; using System.Data.Entity; namespace Balls.Models { public class Ball{ public int ID { get; set; } public string Title { get; set; } [Display(Name

display style edit

https://html.spec.whatwg.org/multipage/interaction.html#attr-contenteditable <!doctype html> <style contenteditable> /*yuanjiang123www*/ head, style { display:block } </style> 小结: 0-The style element is one of HTML elements.

重构改善既有代码设计--重构手法08:Replace Method with Method Object (以函数对象取代函数)

你有一个大型函数,其中对局部变量的使用,使你无法釆用 Extract Method. 将这个函数放进一个单独对象中,如此一来局部变量就成了对象内的值域(field) 然后你可以在同一个对象中将这个大型函数分解为数个小型函数. class Order... double price() { double primaryBasePrice; double secondaryBasePrice; double tertiaryBasePrice; // long computation; ... }

accessor method &amp; mutator method

import java.time.*; public class MyTest{ public static void main(String[] args){ LocalDate date = LocalDate.now(); int month = date.getMonthValue(); int today = date.getDayOfMonth(); date = date.minusDays(today - 1); DayOfWeek weekday = date.getDayOf