壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 649|回复: 15

[制造] 弹性域能否控制不让用户更改

[复制链接]
发表于 2013/5/11 16:59:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
弹性域能否控制让用户只能看,不能更改。
 楼主| 发表于 2013/5/13 11:08:30 | 显示全部楼层
没有哪位大师知道吗?目前有些用户自己手工更改弹性域,导致数据不对;
发表于 2013/5/13 11:24:26 | 显示全部楼层
不能改还要弹性域做什么呢?
发表于 2013/5/13 11:57:49 | 显示全部楼层
你将不想让用户修改的内容放置到说明栏位就好了,只显示出来
发表于 2013/5/13 13:55:26 | 显示全部楼层
什么弹性域?
只给一个值,看你怎么改{:soso_e120:}
或者设置了不显示出来行不行。。
 楼主| 发表于 2013/5/14 21:23:27 | 显示全部楼层
to 常志强  :
    说明栏位怎么设置?
 楼主| 发表于 2013/5/14 21:24:14 | 显示全部楼层
目标是: 只能看不能更改,
 楼主| 发表于 2013/5/16 10:23:24 | 显示全部楼层
没有哪位大师遇到这种问题吗?
发表于 2013/5/16 11:26:59 | 显示全部楼层
看起来目前是不支持,5楼的方法还真是ORACLE推荐的。

How To Make a Flexfield Segment As Read Only Or Restrict With Pre-Defined Value? [ID 420527.1]
Applies to:
Oracle Application Object Library - Version 11.5.10.0 to 11.5.10.2 [Release 11.5]
Information in this document applies to any platform.
Checked for relevance on 11-MAY-2013
Goal

The note describes the workaround to implement the following:

To make a Flexfield Segment as read only.
To populate a Flexfield Segment with some pre-defined value dynamically at runtime business logic.
To restrict users from entry in a particular segment of a Flexfield.


Solution

1. Create a table with two columns and will always hold a single row.

   Ex:
      Create Table Flex_Test(
                           Doc_No Number(20),
                           Cheque_No Number(16));

2. Open the Form having the Flexfield structure.
3. Find a suitable custom event / trigger in the form to fire the personalization rule.
4. Open the Personalization form from the pull down menu Help => Diagnostics => Custom Code => Personalize.
5. Create the personalization rule as follows:

  Condition :
  ------------
  Trigger Event : <Trigger Name>
  Trigger Object : <Object Name>
  Condition : NIL

  Action :
  --------
   Type : Builtin
   Builtin Type : FORMS_DDL
   Argument :
        =’Declare
            Begin
                 Delete from Flex_Test;
                 Insert Into Flex_Test Values(‘ ||<:Block_Name.Field_Name(Doc_No)>,<Cheque_No> ||’);
                 Commit;
           End;’

6. Save the personalization rule.
7. Create a Table validated list type Value Set with the table Flex_Test, which will list only one value.
8. Attach the Value Set with the Flexfield segment which is to be restricted from user entry.
发表于 2013/5/16 11:29:43 | 显示全部楼层
ORACLE说明的原因:
Personalizing the flexfield segments is not possible through forms personalization due to below reason:

A Flexfield is a single field in a Form but then when you click into it and it opens up the flexfields window,
the multiple fields you see is actually a user exit with multi segment values, not form fields.
No Form Personalization events are passed to flexfield windows (user exits).
No Form Personalization events are passed to segments inside the flexfield window (user exit).

If you want to disabled the segments, you can disable the segment
in flexfield definition form(Uncheck the enabled checkbox).

The flex developer has stated this would involve a major re-write of the flex code for APPCORE
to process forms personalization rules and actions pertaining to flexfields.
One need to understand that flexfields are not assigned to a canvas,
the flexfield UIs in forms are not native form fields but built on the fly with user exits.

Defaulting, populating, and or manipulating hidden fields for descriptive
flexfield attributes should not, and are not supported by flexfields to be
done through forms personalizations. Only Flexfields will support through
the flexfield setup and definition.
 楼主| 发表于 2013/5/20 12:12:05 | 显示全部楼层
谢谢!!!!!!!!!!!!!!!!!!!
发表于 2013/6/27 09:58:03 | 显示全部楼层
看英文好吃力啊{:soso_e130:}
发表于 2013/7/15 17:21:25 | 显示全部楼层
如果是可以改代码的话,那这个就很容易实习了
发表于 2013/7/15 17:25:25 | 显示全部楼层
    fnd_Descr_Flex.update_definition(
                                      BLOCK=>'PO_LINES',
                                      FIELD=>'DESC_FLEX',
                                  READ_ONLY=>'Y'
                                      );
 楼主| 发表于 2013/8/5 10:57:20 | 显示全部楼层
通过上面方式可以实现吗
发表于 2013/8/5 14:12:50 | 显示全部楼层
有截图吗?你的目的是不想让用户在弹性域里面填东西?用你默认的值填到弹性域里面吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/29 09:55 , Processed in 0.016780 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表