ローカル更新では、更新プログラムは要求を処理したのと同じワークプロセスによって実行されます。ダイアログユーザは更新が終了するまで待ってから追加データを入力しなければなりません。データベースへのアクセス量を減らしたいときに、この更新が便利です。ローカル更新のデメリットはその並列性にあります。更新は多くの異なるワークプロセスが処理することができます。非同期更新や同期更新の場合はこれとは異なり、更新ワークプロセスが少ない(おそらく1つしか存在しない)ため、更新はシリアル化されます。

ローカル更新に切り替えるときは、 ABAP 命令 SET UPDATE TASK LOCAL を使用します。この命令で‘ローカル更新切替’が設定されます。この切替が設定されると、 CALL FUNCTION IN UPDATE TASK がローカル更新要求として認識されます。更新は COMMIT WORK を含むダイアログステップと同じワークプロセスで処理されます。トランザクションは更新が終了するまで待ってから処理を続行します。

1つの例として、通常はダイアログモードで実行する非同期更新を使用するプログラムがあるとします。しかし、今度はそのプログラムをバックグラウンドで実行したいとします。プログラムをバックグラウンドで実行するときはシステム応答時間は無関係であり、更新が実際に終了したときはプログラムに処理を続行させたいだけなので、プログラムに SET UPDATE TASK LOCAL スイッチを設定することができます。そのうえでシステム変数を使って、プログラムが現在バックグラウンドで実行中かどうか、実行時にチェックすることができます。

デフォルトでは、ローカル更新スイッチは設定されず、各 COMMIT WORK または ROLLBACK WORK 後にリセットされます。したがって、各 SAP LUW の前に SET UPDATE TASK LOCAL 命令をインクルードする必要があります。

ローカル更新のなかでデータをリセットすると、 ROLLBACK WORK 命令がトランザクションのダイアログ部と更新部の両方に適用されます。なぜならば、新規の SAP LUW がその更新に対して開始されないからです。

参考文献

  ローカル更新

SET UPDATE TASK LOCAL (ローカル更新 )的更多相关文章

  1. ABAP-SET UPDATE TASK LOCAL

    SET UPDATE TASK LOCAL 影响 切换本地更新任务.这意味着当您指定  CALL FUNCTION ... IN UPDATE TASK时,更新数据不会存储在数据库中,而是存储在ABA ...

  2. SET UPDATE TASK LOCAL

    SET Effect Switches on the local update task. This means that when you specify CALL FUNCTION ... IN ...

  3. 关于 IN UPDATE TASK

    [转 http://blog.sina.com.cn/s/blog_6f74e6d50100sq57.html]更新程序必须用一个特殊的FM(update module)来实现. 1.Exportin ...

  4. 配置Windows Update,补丁更新

    配置Windows Update更新下载及安装方式: #NotificationLevel说明: # 0:未配置,不会对当前设置进行更改 # 1:从不检查更新 # 2:检查更新,但是让我选择是否下载和 ...

  5. 【转】PL/SQL编辑数据"这些查询结果不可更新,请包括ROWID或使用SELECT...FOR UPDATE获得可更新结果"处理

    [转]PL/SQL编辑数据"这些查询结果不可更新,请包括ROWID或使用SELECT...FOR UPDATE获得可更新结果"处理 只要有人用了: select t.* from ...

  6. ON DUPLICATE KEY UPDATE单个增加更新及批量增加更新的sql

    转: ON DUPLICATE KEY UPDATE单个增加更新及批量增加更新的sql 本文为博主原创,转载请注明出处. 在实际应用中,经常碰到导入数据的功能,当导入的数据不存在时则进行添加,有修改时 ...

  7. Oracle编辑数据时提示:这些查询结果不可更新,请使用ROWI或者SELECT……FOR UPDATE获得可更新结果

    我们在对Oracle数据库进行操作时,有时会在查询完结果后想要对其中的某些数据进行操作,当我们点击编辑(一个锁标志)是,会提示我们上述问题中的错误:这些查询结果不可更新,请使用ROWI或者SELECT ...

  8. ABAP术语-Update Task

    Update Task 原文:http://www.cnblogs.com/qiangsheng/archive/2008/03/20/1114184.html Part of an ABAP pro ...

  9. SpringMVC+Hibernate 使用 session.update(obj) 未更新的问题

    1.使用spring控制事务 2.使用session.update(obj)执行更新 spring事务配置: <bean id="transactionBese" class ...

随机推荐

  1. Oracle 查看session级别信息

    1. 查看活动会话信息[sql] view plain copySELECT *    FROM V$SESSION   WHERE USERNAME IS NOT NULL     AND STAT ...

  2. DisparityCostVolumeEstimator.cpp

    #include "DisparityCostVolumeEstimator.hpp" #include "DisparityCostVolume.hpp" # ...

  3. 用jquery写的json省市县三级联动下拉

    <form action="#" name="myform"> <label>省</label><select nam ...

  4. HDU 1159 Common Subsequence(裸LCS)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Time Limit: 2000/1000 MS (Jav ...

  5. Oracle数据库对象,同义词、序列、视图、索引

    数据库对象简介 Oracle 数据库对象又称模式对象 数据库对象是逻辑结构的集合,最基本的数据库对象是表 其他数据库对象包括: 同义词是现有对象的一个别名. 简化SQL语句 隐藏对象的名称和所有者 提 ...

  6. sql server 语句获取表的描述,主键等等

    sql语句添加表,字段的描述 --添加表的描述 --格式如右:execute sp_addextendedproperty 'MS_Description','字段备注信息','user','dbo' ...

  7. data-ng-show 指令

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  8. 23.POI导出

    POI导出 XSSFWorkbook 对应Excel2007版本及以上 HSSFWorkbook 对应Excel2003版本 还要注意一点,不要用Swagger-ui测试导出的表格,这样的表格文件都是 ...

  9. 优雅的QSignleton (二) MonoSingleton单例实现

    MonoSingleton.cs namespace QFramework.Example { using System.Collections; using UnityEngine; class C ...

  10. 02-第一个iOS程序

    第一个iOS程序 第一个iOS程序简介 初学iOS开发,研究的程序不要过于复杂,应该从最基本的开始 大房子都是由小砖一块一块堆成的,而大型app是由无数个小程序段组成的 接下来实现一个简单的“加法计算 ...