2020-08-20 22:54发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨;
我需要知道时间是否介于两次之间。例如:
如果01:00在18:00至07:00之间。
我应该怎么做?有什么功能吗?
字段时间为TIMS。
非常感谢您!
大卫
大卫,您好,
检查以下功能模块:
SD_CALC_DURATION_FROM_DATETIME:查找两个日期/时间之间的时差并以小时为单位报告时差
L_MC_TIME_DIFFERENCE:查找两个日期/时间之间的时差
此致
钱德拉·塞卡(Chandra Sekhar)
>,如果介于1800到0600和它的2300之间?
有一天的更改,因此在这种情况下会失败,正如我在何时建议的那样 您在考虑时间,还必须考虑日期。 否则,您将得到错误的结果。
用1800到2400进行检查,当前时间是2300
。 您还必须注意更改日期。
此消息已被审核。
感谢您的回答,最好的解决方案是时间比较,很好的工作。/p>
您好
我知道这个问题确实很老,但是我想回答这个问题,因为我有相同的问题和答案。 我在SAP中找到此代码,以检查中断是否在时间间隔内。
参数: beguz TYPE dienst_von, enduz TYPE dienst_bis, pabeg TYPE pdbeg, 挂起TYPE pdend。 数据:m_pabeg(5), m_paend(5), m_beguz(5), m_enduz(5), time24(6)VALUE'240000', char_time(6), char_pabeg(6), char_paend(6), char_beguz(6), char_enduz(6), num_pabeg(6)TYPE n, num_paend(6)TYPE n, num_beguz(6)TYPE n, num_enduz(6)类型n。 数据rv_subrc类似于sy-subrc。 选择开始。 清除rv_subrc。 *转换为计算时间: char_pabeg = pabeg。 如果paend <= pabeg或 佩恩 char_time =暂停。 char_paend = char_time + time24。 其他。 char_paend =暂停。 万一。 char_beguz = beguz。 如果enduz <= beguz。 char_time = enduz。 char_enduz = char_time + time24。 其他。 char_enduz = enduz。 万一。 如果pabeg num_enduz。 *中断是在时间间隔结束之后: 消息"时间间隔结束后中断。" 输入" I"。 rv_subrc = 4。 万一。 万一。 如果num_pabeg> = num_beguz。 *中断开始或直接在该时间间隔开始: 如果num_paend <= num_enduz。 *休息时间间隔->确定!!! 消息"在时间间隔内断裂->确定!!!" 输入" I"。 清除rv_subrc。 万一。 如果num_paend> num_enduz。 *中断结束时间隔时间: MESSAGE'Break缩短了最后的时间间隔:'TYPE'I'。 rv_subrc = 4。 万一。 万一。 如果num_pabeg> num_enduz。 *完全在时间间隔后中断: 信息"断裂完全在时间间隔之后"类型" I"。 rv_subrc = 4。 ENDIF。
最诚挚的问候
易卜拉欣
最多设置5个标签!
大卫,您好,
检查以下功能模块:
SD_CALC_DURATION_FROM_DATETIME:查找两个日期/时间之间的时差并以小时为单位报告时差
L_MC_TIME_DIFFERENCE:查找两个日期/时间之间的时差
此致
钱德拉·塞卡(Chandra Sekhar)
>,如果介于1800到0600和它的2300之间?
有一天的更改,因此在这种情况下会失败,正如我在何时建议的那样 您在考虑时间,还必须考虑日期。 否则,您将得到错误的结果。
用1800到2400进行检查,当前时间是2300
。 您还必须注意更改日期。
此消息已被审核。
感谢您的回答,最好的解决方案是时间比较,很好的工作。/p>
您好
我知道这个问题确实很老,但是我想回答这个问题,因为我有相同的问题和答案。 我在SAP中找到此代码,以检查中断是否在时间间隔内。
最诚挚的问候
易卜拉欣
一周热门 更多>