1. *&---------------------------------------------------------------------*
  2. *& Form FRM_SET_PRINT_PARAM
  3. *&---------------------------------------------------------------------*
  4. * text
  5. *----------------------------------------------------------------------*
  6. * <--P_LS_CONTROL_PARAM text
  7. * <--P_LS_COMPOSER_PARAM text
  8. *----------------------------------------------------------------------*
  9. FORM sub_set_print_param CHANGING pv_control_param TYPE ssfctrlop
  10. pv_composer_param TYPE ssfcompop.
  11.  
  12. DATA: ls_itcpo TYPE itcpo.
  13. DATA: lv_repid TYPE sy-repid.
  14. DATA: lv_device TYPE tddevice.
  15. DATA: lv_retcode TYPE sysubrc.
  16. lv_repid = sy-repid.
  17.  
  18. CALL FUNCTION 'WFMC_PREPARE_SMART_FORM'
  19. EXPORTING
  20. pi_nast = nast
  21. pi_repid = lv_repid
  22. IMPORTING
  23. pe_returncode = lv_retcode
  24. pe_itcpo = ls_itcpo
  25. pe_device = lv_device.
  26.  
  27. IF sy-subrc = 0 AND lv_retcode = 0.
  28. MOVE-CORRESPONDING ls_itcpo TO pv_composer_param.
  29. pv_composer_param-tdnewid = abap_true.
  30. pv_control_param-device = lv_device.
  31. pv_control_param-no_dialog = abap_true.
  32. pv_control_param-getotf = ls_itcpo-tdgetotf.
  33. pv_control_param-langu = nast-spras.
  34. ELSE.
  35. pv_composer_param-tdnewid = abap_true.“新的spool
  36. pv_composer_param-tdimmed = abap_true.”立即打印
  37. pv_composer_param-tddest = print_co-desti.“打印机名称
  38. pv_control_param-no_dialog = abap_true.”跳过手动选择打印机
  39. pv_control_param-langu = print_co-spras.
  40. ENDIF.
  41. ENDFORM.

在调用FORM的时候检查USER_SETINGS 参数是否置空了,改参数默认是‘X’. 若改参数不为空,则系统会默认读取 user profile 里默认用户参数 设置的打印机,如果

用户参数没有设置,则会弹出打印机参数选择dialog。

  1. CALL FUNCTION gv_fmname
  2. EXPORTING
  3. control_parameters = gs_control
  4. output_options = gs_options
  5. it_components = gt_components
  6. it_operations = gt_operations
  7. is_header = gs_header
  8. user_settings = ' '
  9. EXCEPTIONS
  10. formatting_error = 1
  11. internal_error = 2
  12. send_error = 3
  13. user_canceled = 4
  14. OTHERS = 5.

SAP Smart Form 无法通过程序自定义默认打印机问题解决的更多相关文章

  1. 如何以编程方式打印到在 MFC 中的非默认打印机

    http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763105790245b09c0252bd7a74a2485d315d2390f0750 ...

  2. SAP PP- OPK8生产订单打印 配置Smart form.

    OPK8 正常情况下是不可以配置Smart form 的 OPK8进入工单打印配置界面,选择Forms, 你会发现只有Script form 和PDF form(Adobe form)可选的,没有配置 ...

  3. 微信小程序自定义音频组件,自定义滚动条,单曲循环,循环播放

    小程序自定义音频组件,带滚动条 摘要:首先自定义音频组件,是因为产品有这样的需求,需要如下样式的 而微信小程序API给我们提供的就是这样的 而且产品需要小程序有后台播放功能,所以我们不考虑小程序的 a ...

  4. 微信小程序——自定义导航栏

    微信头部导航栏可能通过json配置: 但是有时候我们项目需求可能需要自定义头部导航栏,如下图所示: 现在具体说一下实现步骤及方法: 步骤: 1.在 app.json 里面把 "navigat ...

  5. 微信小程序自定义数据分析试水

    昨晚收到小程序自定义分析的内测邀请,简单试用了一下.说明挺长的,大概是这个意思: 一.定义一系列事件,对其进行统计 事件可以对页面中的这些事件进行追踪 click enterPage leavePag ...

  6. SAP UI5和微信小程序对比之我见

    今天继续由SAP成都研究院著名的菜园子小哥Wang Cong,给大家分享他作为一个SAP前端人员是如何看待SAP UI5和微信小程序的异同点的. 关于Wang Cong种菜的手艺,大家请移步到他以前的 ...

  7. 百度小程序自定义通用toast组件

    百度小程序Toast组件 author: @TiffanysBear 百度小程序自定义通用toast组件 BdToast百度小程序自定义通用组件-github地址 需求 手百小程序的toast仅支持在 ...

  8. 微信小程序自定义tabbar的实现

    微信小程序自定义tabbar的实现 目的:当采用微信的自定义tabbar组件的时候,切换的时候会出现闪屏的效果:当使用微信默认的tabbar的时候,限制了tabbar的数量以及灵活配置. 方案:自己动 ...

  9. 【ABAP系列】SAP ABAP 高级业务应用程序编程(ABAP)

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 高级业务应用程 ...

随机推荐

  1. JAVA学习2——HelloWorld

    Java语言的诞生.版本以及工具:Java的安装开发环境以及环境变量的配置:第一个Java程序--HelloWorld

  2. Docker部署PostgreSQL主从

    #准备 PostgreSQL12.3版本容器两台,部署参考https://www.cnblogs.com/zspwf/p/16113298.html 主库: 192.168.3.14:2200 从库: ...

  3. vue 设置动态标题

    在 router/index.js 文件中设置 meta:{title:'标题'} 和 router.beforeEach,即可实现功能, 代码如下: import { createRouter, c ...

  4. Vue 学习之路(一)- 创建脚手架并创建项目

    安装脚手架 命令 npm install -g @vue/cli 打开 cmd 窗口输入以上命令.当出现以下界面即表示安装完成. 查看已安装脚手架版本 命令 vue -V 在 cmd 窗口输入以上命令 ...

  5. FreeRTOS --(5)内存管理 heap4

    FreeRTOS 中的 heap 4 内存管理,可以算是 heap 2 的增强版本,在 <FreeRTOS --(3)内存管理 heap2>中,我们可以看到,每次内存分配后都会产生一个内存 ...

  6. Error:java: Can‘t generate mapping method with primitive return type.报错

    原因:Spring项目中使用了JPA以及Mybatis–mapper文件注解引错包导致编译错误 解决: 错误:import org.mapstruct.Mapper;正确路径:import org.a ...

  7. Linux C++ Reactor模式

    文件结构 reactor_main.cpp reactor_server.cpp reactor_server.h CMakeLists.txt CMakeLists.txt cmake_minimu ...

  8. 数据结构_C语言_二叉树先序、中序、后序遍历

    # include <stdio.h> # include <stdlib.h> typedef struct BiTreeNode { char data; struct B ...

  9. kill -9 进程杀不掉,怎么办?

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ 用ps和grep命令寻找僵尸进程 ps -A -ostat,ppid,pid,cmd | gr ...

  10. python使用虚拟环境venv

    venv模块支持使用自己的站点目录创建轻量级"虚拟环境",可选择与系统站点目录隔离.每个虚拟环境都有自己的Python二进制文件(与用于创建此环境的二进制文件的版本相匹配),并且可 ...