通过CCID获得各个段的描述的方法

gl_code_combination 是存放会计科目组合的键弹性域的表单。
该表单中没有字段的描述,一个段一个段的加描述太麻烦了。
我通常都是通过以下的方法来获得描述

sql语句上:
SELECT gl_flexfields_pkg.get_description_sql(&char_of_account_id,1,gcc.segment1) seg1,
       gl_flexfields_pkg.get_description_sql(&char_of_account_id,2,gcc.segment2) seg2,
       gl_flexfields_pkg.get_description_sql(&char_of_account_id,3,gcc.segment3) seg3,
       gl_flexfields_pkg.get_description_sql(&char_of_account_id,4,gcc.segment4) seg4,
       gl_flexfields_pkg.get_description_sql(&char_of_account_id,5,gcc.segment5) seg5,
       gl_flexfields_pkg.get_description_sql(&char_of_account_id,6,gcc.segment6) seg6
FROM gl_code_combinations gcc
WHERE gcc.code_combination_id = &code_combination_id;

form上:
  declare
          l_char_id number;
          l_account varchar2(300);
          l_desc varchar2(500);
          l_flex_return varchar2(480);
          l_num number;
  begin
      
       dbms_application_info.set_client_info(122);
        --==Get structure_number
            select gl.chart_of_accounts_id
              into l_char_id
              from gl_sets_of_books gl,            
                   fnd_currencies fnd,                   
                   ap_system_parameters asp,
                   gl_daily_conversion_types gdct,
                   financials_system_parameters fsp,
                   ap_terms  apt
             WHERE gl.set_of_books_id = asp.set_of_books_id
                   AND gl.currency_Code = fnd.currency_code
                   AND asp.default_exchange_rate_type = gdct.conversion_type(+)
                   AND asp.prepayment_terms_id = apt.term_id(+);
        --==Get the CCID
          l_account := '11.000000.212101.0000.0000.0000';
          l_num :=fnd_flex_ext.get_ccid(
                                        application_short_name => 'SQLGL',
                                        key_flex_code => 'GL#',
                                        structure_number => 101,
                                        validation_date => to_char(sysdate,'YYYY-MM-DD'),
                                        concatenated_segments => l_account
                                       );
          dbms_output.put_line(l_num);
       --==Get segment conbination
           l_flex_return := FND_FLEX_EXT.GET_SEGS(
                                       APPLICATION_SHORT_NAME => 'SQLGL',
                                      KEY_FLEX_CODE          => 'GL#',
                                      STRUCTURE_NUMBER       => l_char_id,
                                      COMBINATION_ID         => l_num);
          dbms_output.put_line(l_flex_return);
       --==Get segment description
           if (FND_FLEX_KEYVAL.validate_ccid(
                appl_short_name => 'SQLGL',
                key_flex_code => 'GL#',
                structure_number => l_char_id,
                                                    combination_id => l_num,
                                                    displayable         => 'ALL',
                                                    data_set        => NULL,
                                                    vrule                => NULL,
                                                    --security        => 'IGNORE',
                                                    get_columns        => NULL,
                                                    resp_appl_id        => NULL,
                                                    resp_id                => NULL,
                                                    user_id                => NULL)
               ) Then       
               l_desc := FND_FLEX_KEYVAL.concatenated_descriptions;
           end if;
          dbms_output.put_line(l_desc);
  end;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: USB CCID是一种安全性高、速度快、易于管理的智能卡读取器标准,其全称是Universal Serial Bus Chip/Smart Card Interface Devices,中文译为“通用串行总线芯片/智能卡接口设备”。在智能卡的应用领域,USB CCID提供了一种在电脑与智能卡之间进行数据传输的接口,从而使智能卡可以更加方便地应用于各种领域。 USB CCID支持多种操作系统,包括Windows、Linux和Mac OS等,并且管理也十分方便。在使用过程中,USB CCID的用户可以通过电脑来进行对智能卡的读取、写入、验证以及加密等操作。它可以读取各种类型的智能卡,例如金融卡、医保卡、居民身份证等,因此具有很高的实用价值。 USB CCID不仅可以提高智能卡的使用便捷性,还可以有效提高数据交换的安全性和速度。通过USB CCID可以避免智能卡读取器的驱动程序不兼容或版本不同导致的问题,同时也避免了移动数字签名的复杂程序和安装所需时间。 在国内,智能卡技术的应用已经逐步普及,随着智能卡应用场景的增多,USB CCID的应用也将越来越广泛。 ### 回答2: USB CCID(USB Chip Card Interface Device)是一种使用USB接口连接智能卡或芯片卡的设备协议。它提供了一种标准化的接口,使得智能卡设备与计算机之间可以进行通信和交互。 USB CCID协议定义了智能卡读卡器与计算机之间的通信规范,包括数据传输协议、命令格式等。智能卡读卡器通过USB接口与计算机连接,将智能卡信息传递给计算机进行处理。在系统层面,操作系统会为智能卡读卡器分配一个设备驱动程序,使其可以被识别和使用。 通过USB CCID协议,智能卡读卡器可以与计算机进行安全的数据交换。智能卡可以存储个人身份认证、支付信息、加密密钥等重要数据。通过智能卡读卡器,计算机可以读取和写入智能卡的数据,并进行相应的验证和处理。这样可以提高数据的安全性,防止未经授权的访问。 USB CCID协议的出现,方便了各个领域对智能卡的应用。例如在金融领域,智能卡读卡器可以用于实现电子银行、电子钱包等支付功能。在身份认证领域,智能卡读卡器可以用于实现电子身份证的读取和验证。在网络安全领域,智能卡读卡器可以用于实现安全存储和传输加密密钥。而USB CCID协议在这些应用中起到了关键的作用。 总之,USB CCID是一种通过USB接口与计算机通信的智能卡读卡器设备协议。它提供了一种标准化的接口,使得智能卡可以与计算机进行安全的数据交互,广泛应用于金融、身份认证、网络安全等领域。 ### 回答3: USB CCID 是指USB智能卡读卡器设备 (USB Smart Card Reader Device Class) 规范,其全称为Universal Serial Bus Chip / Smart Card Interface Devices。USB CCID 是一种基于智能卡技术的USB设备类别,用于连接计算机和智能卡,实现智能卡的读取、写入及交互功能。 CCID 是一个沟通和管理智能卡读卡器设备和计算机之间通信的协议。通过 USB CCID 规范,计算机可以与智能卡读卡器进行数据传输,实现对智能卡上存储的信息的读取和写入。智能卡读卡器通过 CCID 协议将智能卡与计算机进行连接,使得计算机可以与智能卡进行通信,实现对智能卡的各种操作。 使用 USB CCID,智能卡读卡器可以通过 USB 接口与计算机连接,并通过 CCID 协议进行数据传输。用户可以通过计算机与智能卡进行交互,如读取智能卡上的身份认证信息、存储电子证书、进行数字签名、加解密等操作。同时,通过 USB CCID 规范,可以方便地使用智能卡进行各种安全认证应用,如电子银行、电子身份认证等。 USB CCID 不仅提供了一个标准的通信协议,也提供了一个标准的设备驱动程序接口,使得不同厂商的智能卡读卡器可以统一兼容,减少了对不同供应商的设备进行适配、驱动的问题。同时,使用 USB 接口也使得智能卡读卡器的使用更加便捷,不再依赖于特定的硬件接口。 总之,USB CCID 是一种用于智能卡读卡器的通信协议和设备类别规范,通过 USB 接口连接计算机和智能卡,实现智能卡的读写、交互功能,为各种安全应用提供了便利性和统一性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值