如何检查条件并将文本写入文本文件 oracle 表单

2024-04-08

我正在 Oracle Forms 中创建过程,其中检查验证数据并将数据插入表中。另请检查验证数据如果条件为真,则将一些文本写入文本文件,如果条件不为真,则将一些文本写入文本文件。

Like:

Validation No.1 : OK
Validation No.2 : OK

我成功地为“TRUE”条件创建了程序。现在我想要如果一个条件为真且第二个条件为假,则将文本写入文本文件。

Like:

Validation No.1 : OK
Validation No.2 : ERROR

如果两个条件都为“FALSE”则

Validation No.1 : ERROR
Validation No.2 : ERROR

Code:

PROCEDURE VALIDATION_TEST
(p_mid we_group_hof_k.mstatusid%TYPE,  
 p_status we_group_hof_k.cardstatus%TYPE
) is

LC$Line  Varchar2(4000);
TFile    CLIENT_TEXT_IO.FILE_TYPE ;

begin
insert into test
select mstatusid, cardstatus
from we_group_hof_k
where mstatusid = p_mid 
and cardstatus = p_status;

IF p_mid = 1 AND p_status = 'A' THEN
LC$Line := 'log_' || TO_CHAR (SYSDATE, 'yyyymmdd_HH24miss') || '.log';
TFile := CLIENT_TEXT_IO.FOpen( 'E:\HMIS\State\test.log', 'W' );
CLIENT_TEXT_IO.put_line (TFile, 'Log file ' || LC$Line);
CLIENT_TEXT_IO.new_line (TFile);
CLIENT_TEXT_IO.put_line (TFile, 'Job started at: ' || TO_CHAR (SYSDATE, 'dd-mm-yyyy HH24:mi:ss'));
CLIENT_TEXT_IO.new_line (TFile);
CLIENT_TEXT_IO.put_line (TFile, 'Validation No.1 : ' || 'OK');

CLIENT_TEXT_IO.new_line (TFile);
CLIENT_TEXT_IO.put_line (TFile, 'Validation No.2 : ' || 'OK');

CLIENT_TEXT_IO.fclose (TFile);

END IF;
end;

您尚未告诉我们实际条件是什么,因此您需要填写详细信息。

CLIENT_TEXT_IO.put (TFile, 'Validation No.1 : ' );
if condition_1 then
    CLIENT_TEXT_IO.put_line (TFile, 'OK');
else
    CLIENT_TEXT_IO.put_line (TFile, 'ERROR');
end if;

CLIENT_TEXT_IO.new_line (TFile);

CLIENT_TEXT_IO.put (TFile, 'Validation No.2 : ' );
if condition_2 then
    CLIENT_TEXT_IO.put_line (TFile, 'OK');
else
    CLIENT_TEXT_IO.put_line (TFile, 'ERROR');
end if;

我总共有15个条件

在这种情况下,您可能希望将其包装到辅助函数中:

PROCEDURE VALIDATION_TEST (p_mid we_group_hof_k.mstatusid%TYPE,  
 p_status we_group_hof_k.cardstatus%TYPE ) is    
    LC$Line  Varchar2(4000);
    TFile    CLIENT_TEXT_IO.FILE_TYPE ;

    procedure print_validation (
        p_file in CLIENT_TEXT_IO.FILE_TYPE
        , p_validation_number in number
        , p_condition in Boolean )
    is
    begin
        CLIENT_TEXT_IO.new_line (p_file);            
        CLIENT_TEXT_IO.put (p_file, 'Validation No.'||to_char(p_validation_number) || ': ' );
        if p_condition then
            CLIENT_TEXT_IO.put_line (p_file, 'OK');
        else
            CLIENT_TEXT_IO.put_line (p_file, 'ERROR');
        end if;
    end print_validation;    
begin
    insert into test
    select mstatusid, cardstatus
    from we_group_hof_k
    where mstatusid = p_mid 
    and cardstatus = p_status;

    IF p_mid = 1 AND p_status = 'A' THEN        
        LC$Line := 'log_' || TO_CHAR (SYSDATE, 'yyyymmdd_HH24miss') || '.log';
        TFile := CLIENT_TEXT_IO.FOpen( 'E:\HMIS\State\test.log', 'W' );
        CLIENT_TEXT_IO.put_line (TFile, 'Log file ' || LC$Line);

        print_validation(TFile, 1, condition_1);
        print_validation(TFile, 2, condition_2);
        ...
        print_validation(TFile, 15, condition_15);

        CLIENT_TEXT_IO.fclose (TFile);

    END IF;
end; 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查条件并将文本写入文本文件 oracle 表单 的相关文章

  • 如何为 Weblogic 10.3.6 启用 Java 持久性 2.0

    我正在使用 eclipse 和 weblogic 服务器 为了将项目添加到 weblogic 服务器 它需要支持 Java Persistance 2 0 但是当尝试安装它时 我不断收到此消息 在 Weblogic Server 安装中启用
  • 哪一个代表null? undef 或空字符串

    我想插入null在表的一列中 哪一个代表null undef或空字符串 应该使用哪一种 为什么 我知道关于defined我可以检查一下 但我更多的是从数据库的角度来看 代表哪一个null更合适吗 Update 我在用DBI module D
  • Oracle中如何转义单引号? [复制]

    这个问题在这里已经有答案了 我有一列包含某些存储为文本字符串的表达式 其中包括单个引号 例如 错过的交易 包括引号 发生这种情况时如何使用 where 子句 select from table where reason missed tra
  • SQL:两个没有完整列匹配的表的并集

    我有一个table A其中有一组列A1 A2和一个具有一组列的 table bB1 B2 碰巧的是A2 B1但其余列不匹配 也不应该匹配 我想附加表格 所以我使用UNION ALL 对于不匹配的列 我使用null as COLUMN NAM
  • 如何终止正在运行的 SELECT 语句

    如何通过终止会话来停止正在运行的 SELECT 语句 该命令不断根据 SELECT 语句向我提供输出 我想在其间停止它 As you keep getting pages of results I m assuming you starte
  • 在 Oracle 中创建数据库链接时出错

    我有两个数据库 需要编写跨数据库查询 所以我试图创建一个数据库链接 CREATE PUBLIC DATABASE LINK DBLink CONNECT TO SchemaName IDENTIFIED BY 123 using DBNam
  • 从Oracle表中删除重复行

    我正在 Oracle 中测试某些内容并使用一些示例数据填充表 但在此过程中我不小心加载了重复记录 因此现在我无法使用某些列创建主键 如何删除所有重复行并只保留其中一行 Use the rowid伪列 DELETE FROM your tab
  • 如何在sql中提取周数

    我有一个 varchar2 类型的转换列 其中包含以下主菜 01 02 2012 01 03 2012 etc 我使用 to date 函数将其转换为另一列中的日期格式 这是我得到的格式 01 JAN 2012 03 APR 2012 当我
  • Oracle 查询向上或向下舍入到最近的 15 分钟间隔

    08 SEP 20 08 55 05 08 SEP 20 15 36 13 下面的查询对于 15 36 13 可以正常工作 因为它四舍五入到 15 30 但 8 55 05 向下舍入到 08 45 而它应该四舍五入到 09 00 selec
  • 在 BEFORE INSERT 触发器中使用 IF EXISTS (SELECT ...) (Oracle)

    我的代码不起作用 Oracle 告诉我创建触发器时出现构建错误 显然我无法获得有关构建错误的更准确信息 我以前确实没有做过很多SQL 所以我对语法不太熟悉 我有一种预感 Oracle 不喜欢我的 IF EXISTS SELECT THEN
  • 如何列出表中的所有列?

    对于各种流行的数据库系统 如何列出表中的所有列 对于 MySQL 请使用 DESCRIBE name of table 只要您使用 SQL Plus 或 Oracle 的 SQL Developer 这也适用于 Oracle
  • 如何使用 Ajax 对 Oracle APEX 表格表单执行逐行验证?

    使用我执行的相同验证 处理 基于此线程 在 Oracle APEX v4 2 2 中通过 Ajax 调用 Oracle 函数进行现场验证 https stackoverflow com questions 21474303 calling
  • 安装 OCI8:如何纠正“使用未定义常量 OCI_COMMIT_ON_SUCCESS”错误?

    我正在尝试在 RedHat 服务器 RHEL7 上为我的 Apache 服务器安装 OCI8 此时 当我尝试使用 Symphony 连接到我的服务器时 出现以下错误 异常 ErrorException 使用未定义的常量 OCI COMMIT
  • 如何在Oracle中从表中选择列,*?

    我正在创建很多脚本 有时为了检查表是否根据我的需要进行更新 我会即时编写几个 SELECT 语句 在 SQL SERVER 中你可以这样写 SELECT Column1 FROM MY TABLE 出于可见性原因 这很有用 但是这似乎在 O
  • Hibernate 本机查询 - char(3) 列

    我在 Oracle 中有一个表 其中列 SC CUR CODE 是 CHAR 3 当我做 Query q2 em createNativeQuery select sc cur code sc amount from sector cost
  • Oracle - 获取星期几

    今天是星期二 为什么当我运行这个 SQL 语句时 它说今天不是星期二 SELECT CASE WHEN TO CHAR sysdate Day Tuesday THEN Its Tuesday ELSE Its Not Tuesday EN
  • PLS-00103:遇到符号“;”当预期出现以下情况之一时:

    我正在尝试插入用户安全问题的答案 以用于密码重置功能 Ellucian 横幅 v8 提供了一个用于运行此 API 的 API 我对他们的 API 非常陌生 从下面的错误消息来看 我还远远没有正确运行它 任何帮助表示赞赏 我尝试在 Oracl
  • 如何使用 LINQ to Entities 调用带返回值的 Oracle 函数?

    我正在开发一个从 Oracle 11g 数据库访问数据的应用程序 我使用的是 EF4 并且使用 LINQ 访问数据 我遇到过一个场景 我需要调用存储在包中的函数 这个函数也有一个返回值 我已将此函数添加到实体数据模型中 但无法对其执行 添加
  • 使用 Hibernate 将 Oracle 日期映射到 Java 对象

    我收到消息 文字与格式字符串不匹配 例如 以下是 Java 类中的一些方法 public String getDateTime public void setDateTime String date time 以下是该类的 Hibernat
  • 自动提取数据 - Oracle SQL Developer

    我通过 SQL Developer 连接到 Oracle 数据库 我想编写一个返回每月数据集的查询 然后将该数据提取到分隔文本文件中 我知道如何做到这一点就好了 我想知道是否有一种方法可以编写一个脚本来运行查询并在一年内逐月提取数据 这样我

随机推荐

  • 使用 Eigen 库存储 3D 数据

    如何使用 Eigen C 库存储 3D 数据 矢量用于 1D 数据 矩阵用于 2D 数据 但什么是 3D 数据 或者是否可以创建矩阵向量 您可以使用张量模块 但它还不稳定 Eigen Tensor
  • 在内核中添加新的 IOCTL(数字范围)

    我正在编写新的内核模块 并添加实现新的 IOCTL IOCTL 的编号是否应该遵循任何规则 也许有一些 用户范围 我在嵌入式平台上使用内核 2 6 21 IOCTL 被定义为与设备相关的 如果有 标准 ioctls 供人们实现 这些将是像这
  • 如何在 Xamarin.Mac 中捕获应用程序级别的按键事件

    我有一个 Xamarin Forms 应用程序 并使用主窗口中的 PreviewKeyDown 事件成功捕获 WPF 中的应用程序级别按下事件 如何在 AppDelegate 或其他方式中对 Xamarin Mac 执行相同的操作 您可以添
  • 如何在先前输入后使用 C++ 中的“获取”函数?

    我尝试输入数据gets 函数 但每当程序执行到留置权时gets 它会忽略它 当我使用gets 没有之前的数据输入 它可以正常运行 但是当我在输入数据后使用它时 就会出现问题 这是在先前的数据输入之后使用它的代码 因此在执行中我无法将数据输入
  • 如何保护我的 AngularJS 和 Web Api 应用程序

    我在 ASP NET Web Api 服务器端使用 AngularJS 在我看来 身份验证现在已经变得轻而易举了 或者这太好了以至于令人难以置信 所以我正在考虑使用Web Api的 个人用户帐户 身份验证 我想这就是我所需要的 只要每个请求
  • Keras 张量 - 使用来自另一个张量的索引获取值

    假设我有这两个张量 valueMatrix 形状为 3 where 是批量大小 indexMatrix 形状为 1 我想从中检索值valueMatrix在包含的索引处indexMatrix 示例 伪代码 valueMatrix 7 15 5
  • ANTLR4 Lexer 错误报告(违规字符的长度)

    我正在使用 ANTLR4 为某些语言开发一个小型 IDE 并且需要在词法分析器无法匹配错误字符时给它们下划线 内置的org antlr v4 runtime ANTLRErrorListener http www antlr org api
  • 从 JavaScript 到 PHP 的数据传输

    如何获取 PHP 浏览器的高度和宽度 就像从 JavaScript 到 PHP 的数据传输一样 随着使用innerHeight and InnerWidth 我认为 如果用户屏幕尺寸小 我只需要显示小图片 如果屏幕尺寸大 我只需要显示大图片
  • PHP post方法无法从url获取数据

    我有一个 URL 用于在浏览器中粘贴并按 Enter 键后获取发布数据 我的链接是 http vtrails us mixtape builder song urls http vtrails us wp content uploads 2
  • 如何在 Unity3D 中编辑动画

    我在层次结构中选择了一个带有动画组件的游戏对象 不是动画师 而是一个简单的动画 然后我尝试通过从 窗口 菜单中选择 动画 来打开动画窗口来编辑它 问题是动画窗口变灰 建议我创建一个新动画 但我只想编辑我已经拥有的一个 要编辑动画 您需要选择
  • 在 Swift 中追加字符串

    我是 iOS 新手 我目前正在使用 Objective C 和 Swift 学习 iOS 要在 Objective C 中附加字符串 我使用以下代码 NSString string1 This is NSString string2 Swi
  • getIntent() 和从 savingInstanceState 获取意图有什么区别?

    大家好 我正在尝试 Android 在 2 个类之间传递意图 我意识到有 2 种传递意图的方法 第一个是在这里使用 getIntent 方法 Bundle extras getIntent getExtras mRowId extras n
  • 为什么强制转换为泛型类型会生效?

    On 重温Java http javarevisited blogspot tw 2011 09 generics java example tutorial html 代码摘录如下 class Holder
  • Tar 一个目录,但不要在存档中存储完整的绝对路径

    我在备份 shell 脚本的一部分中有以下命令 tar cjf site1 bz2 var www site1 当我列出存档的内容时 我得到 tar tf site1 bz2 var www site1 style css var www
  • Python tkinter 组合框

    当我单击组合框的名称而不使用 检查 等按钮来显示值时 我想填写我的条目 我怎样才能做到这一点 import tkinter as tk from tkinter import ttk import csv root tk Tk cb ttk
  • 当非模态时,展开 Segue 不会忽略自适应弹出框演示

    iOS 9 beta 更新 Apple 可能已针对 iOS 9 修复了此问题 如果您在 iOS 8 上解决了此问题 请确保它在 iOS 9 上也能正常工作 在故事板中 我创建了一个弹出框演示转场 以通过按钮呈现导航和视图控制器 并创建展开转
  • 动态 SQL 示例

    我最近了解了什么是动态 sql 它对我来说最有趣的功能之一是我们可以使用动态列名和表 但我无法思考现实生活中有用的例子 我唯一想到的是统计表 假设我们有一个包含名称 类型和created data 的表 然后我们想要一个表 其列中是从cre
  • 我可以在不更改系统 DPI 设置的情况下设置 Java Swing 应用程序的 DPI 分辨率吗?

    我有一个使用 Substance LookAndFeel 并以 Windows 作为目标平台的 Java 应用程序 我想增加应用程序的 DPI 设置without更改系统设置 我想这样做是因为我不想强迫用户重新启动 Windows 而且许多
  • git grep 按文件扩展名

    我知道 如果我只想在具有特定扩展名的文件上 grep 查找模式 我可以这样做 searches recursively and matches case insensitively in only javascript files for
  • 如何检查条件并将文本写入文本文件 oracle 表单

    我正在 Oracle Forms 中创建过程 其中检查验证数据并将数据插入表中 另请检查验证数据如果条件为真 则将一些文本写入文本文件 如果条件不为真 则将一些文本写入文本文件 Like Validation No 1 OK Validat