标准表和哈希表Abap之间的差异

你能给我一个清楚的解释一下使用“标准表”、“哈希表”或简单的“表”的区别吗。“初始尺寸0”的含义是什么 请查看以下代码以供参考 it_c01_d006_raw TYPE STANDARD TABLE OF /bic/ac01_d00600 INITIAL SIZE 0, it_c01_d006 TYPE HASHED TABLE OF /bic/ac01_d00600 WITH UNIQUE KE

Abap 检查表是否存在

我需要ABAP中的SELECT语句,但问题是,该表在该系统上不存在 我正在用FM检查表是否存在: 调用函数“DDIF\u TABL\u GET” 出口 名称='mytable' 进口 gotstate=l_got_state 例外情况 其他=1。 如果sy subrc=0。 从mytable中选择SINGLE*进入mylocalstructure,其中。 恩迪夫。 但仍然存在一个语法错误: “mytable”在ABAP字典中未定义为表 有一种纯粹的ABAP方法可以在不使用函数模块的情况下检查表

如何在ABAP中创建两个复合外键

我有三张桌子用户标签和用户标签。user的主键是iduser+client,tag的主键是idtag+client。现在,我想为这两个主键创建表user\u标记的外键,而不需要客户端在其中两次。 我该怎么做?如何在条目帮助/检查中显示它(可用输入只有一个来源,而客户端有两个来源) 下面是一个例子: client|idtag client|iduser ------------- ------------- 1 | 1 1 | 3 1 |

Abap 使用访问密钥更改SAP标准代码

当我试图更改SAP标准代码,从表devaccess中获取访问密钥时,无法识别访问密钥为什么 我相信访问密钥与安装号和对象目录条目相链接。此处的安装编号是初始编号,因此对象不能用于此系统。我相信访问密钥链接到安装编号和对象目录条目。此处的安装编号为初始编号,因此对象不能用于此系统。访问密钥始终绑定到特定的SAP安装。您需要从SAP获取此密钥 还有一种更好的方法可以增强SAP的代码,而不必按照您希望的方式进行更改 检查是否可以使用隐式增强,或者代码中是否有任何增强点 当您更新SAP版本时,您想要做的

Abap 在循环另一个itab期间修改一个itab

我想做以下几件事 Loop at itab into wa_itab. wa_itab2-field1 = wa_itab-field1. wa_itab2-field2 = wa_itab-field2. wa_itab2-field3 = wa_itab-field3. wa_itab2-field4 = wa_itab-field4. *how to insert in itab2 if fields 1,2 & 3 do not exist or upda

Abap 利用对应无环映射平面结构

我在ABAP7.4SP13上 我想在下面的代码中使用选项2,但是如何进行这种深度映射呢?这里的目标是创建一个干净、简单、易于阅读的映射,避免循环 TYPES: BEGIN OF ty_s_audit, CreatedBy TYPE ernam, LastChangedBy TYPE aenam, END OF ty_s_audit, BEGIN OF ty_s_equipment

Abap 检测ALV网格中的颜色列

我用这个abap函数导出json格式的报告 cl_salv_bs_runtime_info=>set( EXPORTING display = abap_false metadata = abap_false data = abap_true ). data selection_table TYPE TABLE OF RSPARAMS. PERFORM GET_REPORT_READ_PARAMETER USING IV_DYNAMIC_PARA

Abap sm30:设置匹配的列标题

我通过se11在SAP中创建了一个表,然后使用表维护生成器 现在我通过sm30编辑表格: 第二列和第三列:都有标题“Feldname” 第一个“字段名”列称为column\u NAME,其数据元素为“Fieldname” 第二个“Feldname”列称为AUTH_FIELD,其数据元素为“XUFIELD” 我想看看标题中se16(column_NAME,AUTH_字段)中的列名称 如何防止表维护生成器在标题中给出其他名称?选项1-使用自定义数据元素: 不必使用Fieldname和XUFIE

Abap 对所有条目进行慢速选择

下面的SELECT与内部表“GIT_KUNNR_”选项卡“/code>一起运行,该表包含2.291.000行具有唯一客户端(KUNNR)的行,需要16分钟才能完成 select kunnr umsks umskz gjahr belnr buzei bschl shkzg dmbtr bldat zfbdt zbd1t zbd2t zbd3t rebzg rebzj rebzz rebzt into corresponding fields of tab

如何替换ABAP7.5中的附加行?

我有以下代码片段,我想用函数式编写: data(lt_es) = me->prepare_process_part_ztoa1( ). APPEND LINES OF me->prepare_process_part_protocol( ) to lt_es. 如何在新的ABAP 7.5中重写上面的代码?使用该结构(从开始提供) 例如,它可能是这样的: lt_es = VALUE #( BASE me->prepare_process_part_ztoa1( )

Abap 禁用类中自动生成的注释(后端编辑器)

目前,我“被迫”使用SE80/SE24等开发我的报告,我不能使用eclipse。在这里我看到,如果在Z类中有“基于源代码”的视图,那么在每个方法之上,签名都显示为注释。见下图: 嗯,我知道这些注释实际上并不在源代码中,但无论如何都会显示出来(以某种方式生成) 你知道如何禁用这些“评论”吗? 我觉得这些都是多余的,而且我在课堂上失去了概观。我得到了一个88行的实现部分,而不是类中27行的实现部分 这些签名注释由基于SAP GUI的类编辑器通过事务SE24和SE80自动生成 使用ABAP开发工具来

Abap 确定当前的MM周期?

SAP MM的标准建议是,只能同时打开两个时段 如何从程序中确定它们(FM调用/表格读取)?此信息存储在表格MARV中 (回答)。1.转到T代码MMRV 2.提供公司代码 您可以找到当前期间、上一期间和上一年的上一期间

Abap 如何使用CS_BOM_EXPL_MAT_V2为BOM爆炸获取正确数量的组件?

我的程序有问题。我正在使用功能模块CS\u BOM\u EXPL\u MAT\u V2获取物料的BOM表。例如,我有一个物料MAT1,它具有ff。物料清单爆炸 MAT1 - COMP1 with Qty 2 - COMP2 with Qty 1 - COMP3 with Qty 1 然后,对于组件COMP1,它还有子组件: COMP1 - SUBCOMP1 with Qty 1 - SUBCOMP2 with Qty 1 因此,在我的程序中,使用CS\u BOM\u EXPL\u MAT\u

ABAP对象-访问类的消息类?

在ABAP对象类的标题信息中,我可以输入一个消息类,与message语句一起使用。这类似于报告或函数池的MESSAGE-ID语句。由于在生成的部分的任何地方都找不到我在头数据中输入的消息类,因此我假设它是在某个地方生成到顶级语句中的 对于某些库(例如,BAL应用程序日志记录),有必要使用变量或方法参数指定消息类。到目前为止,我已经定义了一个常量来指定消息类并使用该常量。我想知道是否有可能以其他方式访问头数据中指定的消息类,以便消除冗余变量 有人找到了这样做的方法吗 编辑:新方法应该比旧方法更简单

Abap 根据上一个列表框(模块池)中的选择填充的列表框

我有一个DYNPRO 010,它有两个列表框dropdownlist,我想在自动选择第一个项目后填写第二个PEP,不按enter键 当我在listbox1中选择一个值并按enter键时,它会工作 屏幕010: PROCESS AFTER INPUT. Chain. field: wa_screen_010-proj MODULE iniciativa ON REQUEST, wa_screen_010-pep MODULE field_validati

获取SAP库中的ABAP帮助

以下SAP库之间有什么区别: SAP库-4.6c,2001 vs 没有显示版本号,如何获取ABAP帮助: vs 同样,未显示版本号,ABAP帮助: 及 是否为SAP库:URL不是来自SAP 这太令人困惑了。 我正在从SAP库中寻找ABAP帮助如果您正在为您的SAP版本寻找ABAP帮助: 进入你最喜欢的ABAP编辑器SE38,SE80。 将光标放在ABAP关键字上 按F1 这将为您的系统打开一个SAPGUI ABAP帮助窗口 它打开时会显示您开始使用的关键字的帮助。您还可以浏览更多的ABA

使用OpenSQL在ABAP中实现游标的正确方法

我使用SELECT语句用大量记录填充内部表。我是ABAP和OpenSQL的新手。我知道游标是如何工作的,为什么在这种情况下需要它们,但我似乎找不到任何好的例子来说明它们的正确实现。这是我正在使用的代码: TYPES: BEGIN OF lty_it_ids, iteration_id TYPE dat_itr_id, END OF lty_it_ids. DATA: lt_it_ids TYPE STANDARD TABLE OF lty

带可变底的ABAP对数

是否有人知道ABAP中允许的命令或功能模块 将一个变量与另一个变量的底对数?您可以使用以下逻辑进行计算: DATA: num TYPE i, base TYPE i, res TYPE float. num = 81. base = 3. res = log( num ) / log( base ). 结果是4。您可以使用以下逻辑进行计算: DATA: num TYPE i, base TYPE i, res TYPE float.

Abap 在html查看器上隐藏地址/url栏

有没有办法隐藏地址/url栏?我正在使用cl_gui_html_查看器。 致以最良好的祝愿 这些是声明的类型 DATA: html_control TYPE REF TO cl_gui_html_viewer, my_container TYPE REF TO cl_gui_custom_container. CL_GUI_HTML_查看器不显示地址栏 这是一个屏幕字段,是dynpro的一部分,它不属于CL_GUI_HTML_查看器。CL_GUI_HTML_查看器不显示地址栏。你可

Abap 如何在动态内部表中循环?

我正在ZXMBCU10上进行增强植入,它在执行路径的两个级别的自定义程序中调用。在ZXMBCU10内部,我希望访问父程序中的a表,我使用以下方法进行访问 声明父程序名 数据:ex_tbl_name TYPE char100 VALUE'(ZPROGRAM)G_选项卡。 通过字段符号赋值获取值 字段符号:键入任意。 ASSIGN(ex\u tbl\u name)TO. 然后我检查任务是否成功(这是真的) 如果已分配。 我遇到的问题是如何读取字段符号中的数据 我尝试了循环阅读表格,但得到了以下结

Abap 在插入DB表时,找出哪些行是重复的?

我有以下情况: 数据库表,我们用主键称之为ZDBX: MATNR, LIFNR, ZART 在报告中,我有ZDBX的内部表格lt_表格类型表格 DELETE ADJACENT DUPLICATES FROM lt_table COMPARING matnr lifnr zart fact_code. DELETE FROM ZDBX. INSERT ZDBX FROM TABLE lt_table. INSERT语句将导致短转储,因为内部表中的行具有相同的主键,但不同的fact\u

ABAP报告工具栏已禁用

尽管我尝试了多种解决方案,但仍无法使SAP报表的工具栏(见图)正常工作 我的报告代码: CLASS cl_orders_alv DEFINITION. PUBLIC SECTION. METHODS: on_init, on_display. PRIVATE SECTION. METHODS: on_data_fetch. DATA: ct_orders TYPE TABLE OF zo

Abap 在屏幕上显示表格数据

我有一个名为zrswheel的数据库表。我输入了3个数据并希望在屏幕上显示它们。这是我的代码 REPORT ZRS_WHEEL. TYPES: BEGIN OF ty_zrswheel, lv_brand TYPE c, lv_dimension TYPE i, lv_pressure TYPE i, END OF ty_zrswheel. DATA: wa_zrswheel

有没有办法扩展/破解ABAP 30个字符的长度限制?

ABAP变量、类、方法等 这是一个非常烦人的限制,特别是当您想要正确命名事物(例如,单元测试名称)时 有没有办法扩展或破解这个限制?您可能无法解决这个问题,因为您必须为此更改内核结构的负载 您是否有不合适的示例名称?

Abap 在上面您是否正在构建一些完全通用的BI工具?您没有关于可用于硬编码的查询(限制、过滤器等)的信息。首先,任何理智的SAP管理员都不会允许您对其系统运行此类查询(请注意,有这样做的产品,但是…)。关于3)它是每行512字节。您可以通过限制感兴趣的列来解决问题

在上面您是否正在构建一些完全通用的BI工具?您没有关于可用于硬编码的查询(限制、过滤器等)的信息。首先,任何理智的SAP管理员都不会允许您对其系统运行此类查询(请注意,有这样做的产品,但是…)。关于3)它是每行512字节。您可以通过限制感兴趣的列来解决问题。如果你的回答是“我需要所有这些”,你就有一个更大的问题。请告诉我更多。修复了问题。非常感谢。

Abap 两个标题,在一个显示中有自己的行项目

我收到用户的请求,要求开发一个报告,在一个显示器上显示发票详细信息 我所发现的只是如何在同一页中显示两个不同的表 有没有办法在同一个表中显示它,但有两个标题 是这样的 高清计费文件。博士。货币销售组织分销渠道开票日期 IT项目开票数量销售单位净重净值 HD 900230006美元JH01.01.2014 它重10 60公斤,重60 1000公斤 它是20包20 4000 HD 900230007欧元JH01.01.2014 它重1022kg 22990 它是2067包67456 它重30 15公

Abap 如何拆分一系列数字并将其与另一组数字进行比较?

假设我有一个编号。20101105,我需要将其与一系列其他编号进行比较。例如20110105,20090105,并找到最近的编号 我不想总体上比较它,我需要通过解析它来比较每个数字,然后看看哪个是最接近的 有人能建议如何用ABAP语言进行此操作吗?一般来说,您应该提及更多信息。例如,这些数字真的是整数吗?然后,您可以将它们放入一个内部表中,对它们进行排序是找到与实际扫描数据相关的任何“最近”数字的最简单解决方案。这就像整数在排序一样,它们像数字一样排序,我的朋友。但是如果您希望它是字符级的(如果

Abap 使用功能模块更新BSEG-ZOUNR

我成功地用FM change\u文档更改了BKPF-BKTXT,但是为什么我不能用FM change\u文档更改BSEG-ZUONR 这是fmchange\u文档: CALL FUNCTION 'CHANGE_DOCUMENT' TABLES T_BKDF = t_bkdf T_BKPF = t_bkpf T_BSEC = t_bsec T_BSED = t_bsed T_

Abap 使用selectdatasource~*语法的工作示例

对于SAP关键字文档中给出的示例在相应ABAP版本的系统中不被接受,我仍然感到困惑 我试图在ABAP7.40系统上运行给定的forselectdatasource~*…,但得到了错误 此处不允许使用“,”,因为它包含无效字符或是关键字[…] 删除,时,错误为 不存在名为“*”的组件。“*” 这个例子是 正确的例子是什么?和/或:我的系统应该接受哪个ABAP版本(以及如何检查)?您已经提到的关键字文档说明 当使用data_source~*时,语法检查是在a中执行的,它比常规语句更严格地处理语句 语

ABAP中用于替换多次出现的多个字符的正则表达式替换?

这是我的字符串c:编程很有趣,但不是用ABAP。 我写的声明是针对单个字符的 REPLACE ALL OCCURRENCES OF REGEX '\m' in c WITH '@'. 工作正常,但如何使用同一语句替换其他单个字符 例如:我需要使用一个replace语句替换'm','I'。如何编写此代码,将c中所有出现的REGEX'\m\p'替换为'@'。它不起作用了 PS:ABAP学习新手。这不是一个与ABAP相关的“问题”,而是一个如何使用正则表达式的问题:- 试试这个: DATA: lv_

Abap 为什么内置功能模块中允许此结构声明,而新功能模块中不允许此结构声明?

我正在开发一个功能模块,以帮助处理嵌入逻辑的包含文本。在研究SAP处理SAPScript文件和解析逻辑的方式时,我发现了一个声明如下的结构: DATA BEGIN OF events OCCURS 100. INCLUDE STRUCTURE ITCCA. DATA: command LIKE BOOLEAN, template LIKE BOOLEAN, mask LIKE BOOLEAN, END OF events. 这显然有效,因为我可以在

Abap 缺少报告/程序语句,或程序类型为I(包括)

下面是我的功能模块,当我检查下面的功能模块时,它不会抛出任何错误,但当我激活它时,它会给我以下错误,如图3所示。 如果我做错了,请有人帮帮我 谢谢。这将导致功能组出现某种问题,可能是组中的另一个功能模块出现问题。在SE80中显示功能组ZSPT930AM,这样您就有了一个完整的概览并可以在那里查看。这将导致功能组中出现某种问题,可能是该组中的另一个功能模块出现问题。在SE80中显示功能组ZSPT΢U AM,以便您有一个完整的概览并在那里查看。创建功能组和添加功能模块时,您必须在激活功能模块之前激活

ABAP选择计数大于1的字段

有没有办法从BSID中选择BUKRS-KUNNR-DMBTR组合大于1的某些字段。我原以为下面的选择会起作用,但事实并非如此 SELECT bukrs kunnr dmbtr COUNT(*) INTO TABLE git_double FROM bsid WHERE bukrs = '1000' AND blart = 'WP' AND budat IN s_budat AND gjahr IN s_g

Abap 无循环计数itab组

我最近发现了循环中的命令 现在想象一下下面的例子: 我有一个itab,其中有一个列categories。我想知道有多少不同的类别。 使用上面链接的GROUPBY语句,我可以计算循环的执行次数。有没有一种不必循环的更简单的方法?下面是一个简短的示例代码,它包装在一个报告中,您可以在您的系统上尝试 REPORT Z_GROUP_COUNT. TYPES: BEGIN OF lty_st_for_reduce, categories TYPE C LENGTH 4,

Abap 如何查询将选择总账/科目及其金额、营业额和运营成本的总账/科目?树液B1

我如何在科目表中查询哪些总账/科目及其营业额和运营成本 比如说 选择总账/科目、OACT中的金额,其中其类型为营业额 选择总账/科目、OACT中的金额,其中其类型为“运营成本” 我试图在SAP B1的OACT表中搜索,但没有存储营业额、运营成本或资产的列 在没有设置逐户查询条件的情况下,如何进行上述查询 比如说 选择总账/科目,从会计科目代码='0001'或会计科目代码='0002'或会计科目代码='0003'或会计科目代码='0004'的会计科目中选择金额 请任何人都可以帮助我您必须使用包含金

Abap 有没有办法检查SAP系统中是否存在RFC

我正在开发一个ABAP程序,从不同的SAP系统调用RFC。在调用RFC之前,是否有任何方法可以检查目标系统中是否存在RFC?您可以使用FM函数\u exists来检查FM是否存在。很明显,你得把它叫做远程。大致: CALL FUNCTION 'FUNCTION_EXISTS' DESTINATION ... EXPORTING funcname = 'xxx' => enter the FM here, which has to be ch

Abap OpenSQL中另一个表中的计算字段

下面的示例在MySql中工作,如何在OpenSql中实现这一点 SELECT StudentID, Name, ( SELECT COUNT(*) FROM StudentExam WHERE StudentExam.StudentID = Student.StudentID ) AS ExamsTaken FROM Student ORDER BY ExamsTaken DESC; SAP基础版本:740-13为什么不直接使用内部联接和分组方式

Abap mch1的h1型标准表, ls_mch1型mch1, lt_mcha类型mcha标准表, ls_mcha型mcha, lt_mchb型mchb标准表, lt_mska类型mska标准表, lt_mspr类型mspr标准表, lt_char_num类型bapi1003所有值的标准表, lt_char_char类型bapi1003_alloc_value_char的标准表, lt\u字符\u电流类型bapi1003所有值\u电流的标准表, l_objkey类型bapi1003_键对象, l_classnum类型bapi1003_key-classnum, l_atnam类型atnam。 刷新lt_chvw。 *获取物料文档项 挑选* 来自mseg 放入表lt_mseg 其中mblnr=l_mblnr。 *Perpare docubatch注册数据 循环it\u goodsreceipt\u项目分配。 *从plant生成类num和atnam 将“PI”植物连接到l_classnum中。 将“Z_DOC_BATCH_”工厂连接到l_atnam。 *获取物料docubatch使用特性 刷新:lt_返回, 这是我的名字, 我是恰恰恰尔, 这是我的钱。 l_objkey(18)=-材料。 调用函数“BAPI_OBJCL_GETDETAIL” 出口 objectkey=l_objkey objecttable='MARA' classnum=l_classnum 类类型='001' 桌子 allocvaluesnum=lt\u char\u num allocvalueschar=lt\u char\u char allocvaluescurr=lt\u char\u curr return=lt\u return。 在lt_处循环返回赋值,其中type='E'。“检查错误 *无法读取特征,假定没有docubatch处理 e_docbatch_subrc='1'。 e_docbatch_msg_idno=-id&&-number。 e_classnum=l_classnum。 e_objkey=l_objkey。 继续。 结束循环。 读取表lt\U char\U char分配,键字符=l\U atnam。 如果sy subrc 0或-value_neutral=0。 *无docubatch值 继续。 恩迪夫。 *获取关联的物料文档项 读取表lt_mseg赋值 带键mblnr=ls\U头枕垫 mjahr=ls_头枕-doc_年 bwart=-move\u类型 材料=材料 沃克斯=-工厂 menge=-entry\u qnt 最小单位=-输入单位 hsdat=-prod_日期 kzbew=-mvt\u ind lgort=-stge_loc。 如果sy subrc为0。 *没有关联的物料文档项 继续。 恩迪夫。 *检查docubatch类型 如果-值为0。 *执行基本docubatch操作(MCHA和MCH1) *验证是否已分配docubatch nr 如果-vendrbatch是首字母。 *!!!!!!!!!!!!!!!!!!!!!!!!!!!!!即使物料由文件包管理,供应商包也未填充,该怎么办!!!!!!!!!!!!!!! 继续。 恩迪夫。 *为docubatch注册准备数据 清除:ls_mch1, 麦卡。 ls_mch1-matnr=-材料。 ls_mch1-charg=-vendrbatch。 ls_mch1-ersda=sy基准。 ls_mch1-ernam=sy uname。 ls_mch1-ersda_tmstp=sy基准和sy uzeit。 ls_mch1-ersda_tz_sys=sy tzone。 ls_mch1-ersda_tz_usr=sy zonlo。 将对应的ls_mch1移动到ls_mcha。“mch1中的相同字段包含在mcha中 ls_mcha-werks=-工厂。 附加:ls_mch1至lt_mch1, 从麦卡到麦卡。 恩迪夫。 如果-value_neutral=2。“还包括使用的批次 *为使用注册的批次准备数据 清除ls_chvw。 ls_chvw-matnr=-材料。 ls_chvw-werks=-工厂。 ls_chvw-charg=-vendrbatch。 ls_chvw-ebeln=-po_编号。 ls_chvw-ebelp=-po_项目。 ls_chvw-mblnr=ls_头枕垫。 ls_chvw-mjahr=ls_头枕-doc_年。 ls_chvw-zeile=-zeile。 ls_chvw-budat=接收日期是否正确。 ls_chvw-shkzg=‘S’”???价值 ls_chvw-bwart=-move_类型。 ls_chvw-kzbew=-mvt_ind.“采购订单的货物移动” ls_chvw-menge=-entry_qnt。 ls_chvw-meins=-输入计量单位。 将ls_chvw附加到lt_chvw。 恩迪夫。 结束循环。 *进行批量注册 调用函数“VB\u INSERT\u BATCH” 桌子 zmch1=lt_mch1 zmcha=lt_mcha zmchb=lt_mchb zmska=lt_mska zmspr=lt\u mspr . *在使用注册的地方执行批处理 调用函数“VB\u BATCH\u WHERE\u USED\u LIST” 桌子 xchvw=lt_chvw。

为什么这不够好,以及我需要什么 这可以作为配置了文档批处理的MIGO的快照,但不一定涵盖所有情况 它仅适用于采购文档的上下文,不包括其他情况,例如订单和销售订单 此外,我只有必要的日期,因为上面正在创建材料文档,这不可能适用于所有实施案例 我想知道是否有一种从自定义代码执行文档批处理的方法。引用: 如果您使用RFID或TRM功能,或调用IDocs/BAPI,则只能在文档中预订 通过调用支持RFC的功能模块VBDBDM_DATA_mainter_RFC进行批处理 事先或将其纳入过程中 那么这个功能

Abap 在过去30天内选择行

我有一个select语句来获取引用的顺序,但现在我需要将结果限制在过去30天的范围内,但我不知道如何做 SELECT * FROM AFKO WHERE AFKO~PLNBEZ = @reference AND DATEDIFF( DAY, AFKO~GLTRP, @sy-datum ) >= -30 ORDER BY AFKO~GLTRP DESCENDING INTO TABLE @it_afko. 我已经读到DATEDIFF可以进行操作,但SAP表示该功能未知。 我正在尝试

Abap 是否可以在END AT语句中对多个列进行分组?

我有一个内部表lt\u stock,包含以下行: WERKS LGORT MATNR QUANTITY 我想将WERKS LGORT和MATNR分组并添加数量 我使用了两个循环来完成此操作: LOOP AT lt_stock INTO ls_stock. MOVE-CORRESPONDING ls_stock TO ls_stock_key. CONCATENATE ls_stock-werks ls_stock-lgort ls_stock-matnr INTO ls_stock_

Abap 当BELNR值相同时,报告仅从第一行获取信息

我有一份从bsis、bsas、bsid、bsad、vbrk、bkpf和bset获取信息的报告。问题是,如果有两张编号相同的发票,报表会将信息从第一行复制到第二行。因此,如果第4100111596号发票在第一行的总税额为2.140,20,则第二行的相同发票编号的总税额相同,但值为40.140,64。 我能做什么?我必须在什么地方使用buzei场地吗? 代码如下: SELECT SINGLE kbetr fwste hwste FROM bset INTO (<

Abap 手动设置选择选项?

我有一个程序,它基于DATS类型的bdter字段从表RESB检索数据。在选择屏幕上,用户指定范围或使用标准范围(月初-今天) 但是,如果我尝试在未填充日期的情况下重新使用为日期创建的选择选项(用户未输入日期范围),则在select语句中使用该选项时,我对此工作区域所做的更改似乎无法识别 随后是相关的代码段。经过一些测试,我得出结论: 如果用户未修改s_bdter,并随后在代码中设置,则不会过滤任何记录 如果用户修改了s_bdter,记录将被正确过滤 SELECT-OPTIONS: s_bd

ABAP SWC宏。它们是语言的一部分吗?

在一个customer对象中,我们发现了一条SWC语句,我们的解析器被它阻塞了 IF NOT ( pyparaid IS INITIAL OR dataset_exp IS INITIAL ). swc_set_element container 'DATASET' dataset_exp+10. ENDIF. 虽然这似乎意味着它们在ABAP世界中是众所周知的,但我找不到一个正式记录它们的页面。(类似于ABAP关键字文档) 这些宏是否被视为语言的一部分?换句话说,如果它们没有被

Abap cl_salv_表的应用程序工具栏中的自定义按钮?

我正在使用cl_salv_表制作一份报告,我想在ALV网格的工具栏上制作一个按钮,它将显示一个预定义的弹出窗口 我能够在工具栏上创建一个按钮,并将功能代码设置为details,在调试模式下,我看到在单击按钮时sy-ucomm被设置为details,但它不会进入case循环 任何帮助或建议都将不胜感激。请查看程序SALV\u DEMO\u TABLE\u选项如何正确实现事件处理程序,基本上,类lcl\u handle\u事件中用户命令上的方法是您需要的。首先,您应该在带有容器的屏幕上设置SALV网

如何在abap中打开内核模块?

我试图通过双击打开这个内核模块,但它不起作用。我在网上也找不到答案 您知道如何检查/打开内核模块的内部内容吗 申请SAP的开发人员职位,一旦被录用,就可以访问内部内核源代码。该部分是封闭源代码(至少在回答此问题时是封闭源代码),不可供客户或合作伙伴审查。申请SAP的开发人员职位,一旦被接受,即可访问内部内核源代码。该部分是封闭源代码(至少在回答此问题时是封闭源代码),不可供客户或合作伙伴查看。内核模块是对c函数的调用。它们已经编译好了,所以查看它们几乎是不可能的(对于ABAP开发人员来说)。为什

Abap 如何使用筛选器或导入参数:if\u http\u扩展处理\u请求

我正在做一个项目,我们需要构建一个REST服务,但是我们不能使用SAP网关。我正在使用SICF和类创建如下指南所示的服务: 我不明白的是,例如,如何使用过滤器或导入GET请求的参数。有人能帮我上路吗?如果您使用HTTP头变量,这是可能的 检查这个:还是这个 在abap中,您可以通过(path_info=您的变量名)读取它: 如果您没有让它运行,请提供有关get请求的一些信息以及接收请求的方法 编辑:根据这一点,你可以使用帖子而不是GET。我认为您的参数是正确的(这是不发布正文的唯一方法)arch

ABAP:允许特定用户执行的报告列表

我编写了一些ABAP代码,允许通过RFC调用SAP报告并将结果作为JSON返回 现在,如果我能够确定允许给定用户执行哪些报告,那将非常好 是否有方法获取当前用户可以执行的报告列表?您可以使用transactionSUIM查找允许为特定用户执行的事务/报告 SAP中的授权使用授权对象进行管理,授权对象包含授权字段(TCODE、程序等)列表以及允许访问它们的角色。可以使用交易代码SU21(维护授权对象)显示和维护这些授权对象 您可以使用用户信息系统(交易代码SUIM)查看现有角色及其关联的授权对象。

Abap SOST tcode上损坏的PDF附件

我使用cl_bcs类作为PDF附件发送电子邮件。现在,当我在VA02/03 tcode中向发出输出时,它可以工作,并且在电子邮件中我可以打开附件。但是,在VA02 tcode中按“更改模式保存”时,由于使用条件记录自动触发输出类型,因此它发送邮件,但发送PDF附件(仅适用于adobe表单)显示已损坏 有什么建议吗?谢谢你的帮助。我找到了解决办法。原因是Adobe Form FM中的pdf无法正确生成。因此,在转换为二进制文件之前,我们需要传递docparams getpdf=X。这解决了问题,附

  1    2   3   4   5   6  ... 下一页 最后一页 共 35 页