在做项目时有时需要对标准表做增强,增加字段,但是如果增加的字段太长了想要改小,这时sap中SE11是不能直接激活的,需要SE14调整表才能改小,但是使用SE14风险太大了,稍微不注意就会导致被调整的表数据丢失。

以VBAP表为例,SE14调整表的逻辑是把数据先复制到临时表QCMVBAP,然后将VBAP整个干掉,然后把新的表结构给VBAP,然后把临时表数据给新的VBAP

所以千万注意注意,一定不要看着调整很久没有反应就自己强行断掉程序,这时基本都是在复制数据,你如果强行断掉了程序,那数据可不就是没有了嘛,如果运气好的话可能临时表QCMVBAP还有数据,那还有机会恢复

恢复代码如下,网上有个恢复MARC表的程序,但是在数据量大的情况下基本都会出现资源瓶颈,这里对那段代码做了优化,防止资源瓶颈

*&---------------------------------------------------------------------*
*& Report ZWEBAPI_TEST
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zwebapi_test NO STANDARD PAGE HEADING .TABLES vbap .DATA : itab TYPE  TABLE OF vbap WITH HEADER LINE .START-OF-SELECTION .DATA: LV_VBELN TYPE VBAP-VBELN ,LV_POSNR TYPE VBAP-POSNR.LV_VBELN = '9999999999'.LV_POSNR = '9999'.DATA: LV_FLAG(1).
CLEAR: LV_FLAG.WHILE LV_FLAG <> 'X'.EXEC SQL PERFORMING APPENDITAB .SELECT TOP 100000 * INTO :ITAB FROM QCMVBAP WHERE VBELN < :LV_VBELN  OR (VBELN = :LV_VBELN AND POSNR < :LV_POSNR) ORDER BY VBELN DESC , POSNR DESCENDEXEC .DESCRIBE TABLE ITAB LINES DATA(LV_LINES).IF LV_LINES < 100000.LV_FLAG = 'X'.ENDIF.READ TABLE ITAB INTO DATA(LS_ITAB) INDEX LV_LINES.LV_VBELN = LS_ITAB-VBELN.LV_POSNR = LS_ITAB-POSNR.CLEAR: LS_ITAB.INSERT VBAP CLIENT SPECIFIED FROM TABLE ITAB .COMMIT WORK.REFRESH ITAB.WRITE SY-DBCNT .ENDWHILE.FORM APPENDITAB .APPEND ITAB TO ITAB .ENDFORM ."    DATA: BEGIN OF wa,"           VBELN   TYPE VBAP-VBELN,"           POSNR   TYPE VBAP-POSNR,"         END OF wa.""   EXEC SQL."     SELECT VBELN, POSNR"            INTO :wa"            FROM QCMVBAP"            WHERE mandt  = '500' AND"                  VBELN = '1000000016'"   ENDEXEC.""   IF wa IS NOT INITIAL.""   ENDIF.

如果临时表还有数据,运行上面的代码就能找回数据了,这个代码是数据库层面的,是跨client的,但是不跨环境。

数据量大的情况下可能出现time out 的情况,运行程序建议跑后台job。

如果是别的表,代码不适应,大家可以根据逻辑自己做修改。

总之,以后再SE14调整前大家都悠着点把,要我看,改小还不如新增个新字段,干脆就弃用原来的字段就好了。

最后 ,补充一个特别特别重要的问题,在改短字段前,一定要注意表里面的数据没有超长了,保证改短后的字段能存下所有数据,或者事先删除或修改数据,不然调整时必定报错,爆出超长的错,但是表又做不了调整了,数据也删不掉了,最后数据必定丢失,别问我为什么这么清楚,说出来都是泪

SAP-ABAP-SE14丢失的数据如何恢复相关推荐

  1. 电脑给山寨内存卡清理垃圾丢失了数据怎么恢复

    电脑给山寨内存卡清理垃圾丢失了数据怎么恢复 提到数码相机,我们就不得不提到他的亲密伙伴--存储卡!!如今的数码相机或者手机等设备的价格都逐渐走低,越来越多的人都将数码相机和手机作为个人生活中的标准装备 ...

  2. 智能手机丢失了数据怎么恢复

    智能手机丢失了数据怎么恢复 以前提到娱乐设备,大家都会想到电脑,电视,MP4等,现在大多数人都会选择智能手机,智能手机具有上述设备的大部分功能,同时还可以进行拍照.社交.一台智能手机就可以满足人们日常 ...

  3. 计算机死机后重启什么丢失,电脑死机后丢失的数据怎么恢复?

    在日常使用电脑过程中,有些用户喜欢把很多程序一一打开,不使用的程序也不及时关闭.这样由于运行的程序越来越多出现突然卡死的情况,不管你点击鼠标还是键盘,都没有任何反应,***后大多数人都选择重启电脑. ...

  4. 分区丢失了数据怎么恢复

    平常用电脑都非常的爱惜,电脑都没出现过大的问题.不过我有一个很大的缺点,就是记性不好.我非常喜欢玩游戏,尤其是网络游戏, 所以,我有很多的账号,密码,我在电脑上建了一个记事本,里面保存了我的一些账号和 ...

  5. 磁盘显示未分配怎么办?丢失的数据这样恢复

    磁盘未分配指的是未分配的这部分磁盘空间上没有任何分区,也就是说部分空间无法用来保存数据. 我们可以在电脑上打开磁盘管理器查看硬盘及分区情况,以下方图片为例,硬盘共有3个分区,分别是C盘.EFI分区和O ...

  6. SAP ABAP maintanence view的数据校验机制

    Subject: RE: Validate data in maintanence view SM30的Maintenance View是通过SE11里面的工具生成的,所有的显示和增删改查的逻辑都是自 ...

  7. 电子设备丢失数据如何恢复

    随着电脑,移动硬盘.手机等设备不断普及,我们对于数据丢失也就不再陌生.那么我们生活中常见的数据恢复问题,应该怎么解决呢.我们常说,知己知彼百战不殆,所以我们先来了解一下常见的数据恢复问题. 在我们日常 ...

  8. 如何使用Do Your Data Recovery恢复系统升级时丢失的数据

    大家是不是经常在系统更新之后,发现自己的数据没有备份?没关系,这里小编向大家介绍如何恢复这些数据.Do Your Data Recovery是一款Mac系统常见的恢复工具.这款软件能够提供完整的mac ...

  9. SAP ABAP FOR ALL ENTRIES 的用法

    FOR ALL ENTRIES 子句是 ABAP OPEN SQL 语句中常用的功能.带有 FOR ALL ENTRIES 子句的 OPEN SQL 语句代表一种同时包含数据库表和 ABAP 内表的 ...

最新文章

  1. ubuntu 修改时区、时间、同步网络时间、将时间写入硬件
  2. android的shadowRadius属性说明
  3. mysql关于日期的函数_MySQL中关于日期函数汇总
  4. [LeetCode] #44 Wildcard Matching
  5. CentOS6.5+mysql5.1源码安装过程
  6. mysql查询优化not in,mysql not in如何优化
  7. 史上最污技术解读,60 个 IT 术语我竟然秒懂了......
  8. 3D打印设计软件 FreeCAD 入门
  9. iOS 注册极光推送
  10. 针孔微创牙龈手术(Pinhole Gum Rejuvenation)
  11. dos下masm的out of memory 怎么解决,求大佬指教
  12. 推荐好友和共同好友sql
  13. 查看windows系统默认编码 修改windows系统默认编码
  14. linux中execvp函数,Linux shell的实现——execvp
  15. ACM算法模板总结(分类详细版)
  16. JTAG 标准IEEE STD 1149.1-2013学习笔记(三)Test data registers
  17. stm32cubeide烧写程序_STM32CubeIDE使用入门的几个常见问题
  18. android模拟器有什么作用,为什么要用安卓模拟器?安卓模拟器是什么?
  19. 如何将光盘上的CDA文件拷贝到电脑硬盘上
  20. 逆向工程发现苹果 M1 未公开的秘密:矩阵协处理器

热门文章

  1. 这是你的新计算机房吗英语咋写,2017年pep四年级下册英语作业题
  2. 计算机一级考试大纲(详细版)
  3. 利用pygame模块设计一个植物大战僵尸游戏初版设定
  4. 风丘科技为您提供电动汽车高压测试方案
  5. 因为「Web3.0」,推特创始人被自己的投资人拉黑了
  6. ibm服务器芯片架构,IBM服务器X架构技术综述(图)
  7. 从人工客服到人机协同,容联云用AI重塑联络中心
  8. 0.91寸 SSD1306 OLED介绍(二) --- 命令介绍
  9. 用Python爬取猫眼数据分析《无名之辈》
  10. 2013年3月山东综合性网站及社区网站 综合影响力排名