Abap 未找到存档帐单参数的值

Abap 未找到存档帐单参数的值,abap,sap-smart-forms,Abap,Sap Smart Forms,我必须通过SMARTFORMS打印账单文档,并且我想将PDF存档到附件列表中,我必须使用INCLUDE rvadtabl中的结构toa_dara和arc_params,但是它们是空的,没有任何值,因此存档没有完成 我怎样才能得到这个值 使用的代码: 包括rvadtabl。 ... ... lst_loutput_options-tdimmed=gc_x。 lst\u loutput\u options-tddest=nast ldest。 lst_loutput_options-tdnewid

我必须通过SMARTFORMS打印账单文档,并且我想将PDF存档到附件列表中,我必须使用INCLUDE rvadtabl中的结构toa_daraarc_params,但是它们是空的,没有任何值,因此存档没有完成

我怎样才能得到这个值

使用的代码:

包括rvadtabl。
...
...
lst_loutput_options-tdimmed=gc_x。
lst\u loutput\u options-tddest=nast ldest。
lst_loutput_options-tdnewid=gc_x。
lst\u loutput\u options-tdarmod=nast tdarmod。
调用函数lv_fname
出口
控制参数=lst\U控制
输出选项=lst\U输出选项
用户设置=gc\u x
存档参数=弧参数
存档索引=toa\u dara
进口
作业输出信息=lst信息

job_output_options=lst_output。
我们没有特别做过,但是,我们已经将smartform转换为PDF格式,然后通过邮件发送

form convert_and_send.
  data: it_otf type standard table of itcoo,
        it_content type table of tline,
        it_data type table of solisti1,
        it_target type table of solisti1,
        wa_job_info type ssfcrescl,
        wa_content like line of it_content,
        wa_data like line of it_data,
        wa_options type ssfcompop,
        wa_params type ssfctrlop,
        func_name type rs38l_fnam,
        lv_size type sood-objlen,
        lv_buffer type string.

  call function 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
      formname = 'ZMYSMARTFORM'
    IMPORTING
      fm_name  = func_name.

  if sy-subrc <> 0.
    message id sy-msgid type sy-msgty number sy-msgno
    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  endif.

  wa_params-getotf = 'X'.
  wa_params-no_dialog = 'X'.
  wa_params-preview = 'X'.

  call function func_name
    EXPORTING
      control_parameters = wa_params
      wa_options     = wa_options
      my_parameter   = my_parameter
    IMPORTING
      job_output_info    = wa_job_info.

  if sy-subrc <> 0.
    message id sy-msgid type sy-msgty number sy-msgno
    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  endif.

  it_otf[] = wa_job_info-otfdata[].

  call function 'CONVERT_OTF'
    EXPORTING
      format                = 'PDF'
      max_linewidth         = 132
    IMPORTING
      bin_filesize          = lv_size
    TABLES
      otf                   = it_otf
      lines                 = it_content
    EXCEPTIONS
      err_max_linewidth     = 1
      err_format            = 2
      err_conv_not_possible = 3
      others                = 4.
  if sy-subrc <> 0.
  endif.

  loop at it_content into wa_content.
    translate wa_content using '~'.
    concatenate lv_buffer wa_content into lv_buffer.
  endloop.

  translate lv_buffer using '~'.

  do.
    clear wa_data.
    wa_data-line = lv_buffer.
    append wa_data to it_data.
    shift lv_buffer left by 255 places.
    if lv_buffer is initial.
      exit.
    endif.
  enddo.

  it_target[] = it_data[]. " This content send to email

***  ...
***  ...
***  ...
***  call function 'SO_NEW_DOCUMENT_ATT_SEND_API1'
***    EXPORTING
***      document_data              = lv_document_data
***      put_in_outbox              = 'X'
***      commit_work                = 'X'
***    TABLES
***      packing_list               = it_packing_list
***      object_header              = it_object_header
***      contents_bin               = it_target <---------- The content
***      contents_txt               = it_contents_txt
***      receivers                  = it_receivers
***    EXCEPTIONS
***      too_many_receivers         = 1
***      document_not_sent          = 2
***      document_type_not_exist    = 3
***      operation_no_authorization = 4
***      parameter_error            = 5
***      x_error                    = 6
***      enqueue_error              = 7
***      others                     = 8.
endform.
表单转换和发送。
数据:itcoo的it_otf类型标准表,
it\u tline的内容类型表,
它是solisti1的数据类型表,
它是solisti1的目标类型表,
工作信息类型ssfcrescl,
wa_内容类似于it_内容线,
wa_数据,如it_数据线,
wa_选项类型ssfcompop,
W_参数类型ssfctrlop,
函数名称类型rs38l\U fnam,
lv_尺寸类型sood objlen,
lv_缓冲区类型字符串。
调用函数“SSF\U函数\U模块\U名称”
出口
formname='ZMYSMARTFORM'
进口
fm_name=func_name。
如果sy subrc为0。
消息id sy msgid类型sy msgty编号sy msgno
使用sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。
恩迪夫。
wa_params-getotf='X'。
wa_参数-no_对话框='X'。
wa_参数预览='X'。
调用函数func_name
出口
控制参数=wa参数
wa_选项=wa_选项
my_参数=my_参数
进口
作业\输出\信息=工作\信息。
如果sy subrc为0。
消息id sy msgid类型sy msgty编号sy msgno
使用sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。
恩迪夫。
it_otf[]=wa_作业信息-otfdata[]。
调用函数“CONVERT\u OTF”
出口
格式='PDF'
最大线宽=132
进口
bin\u filesize=lv\u size
桌子
otf=it_otf
行=it\u内容
例外情况
err_max_线宽=1
err_格式=2
错误转换不可能=3
其他=4。
如果sy subrc为0。
恩迪夫。
将it_内容循环为wa_内容。
使用“~”翻译wa_内容。
将lv_缓冲区wa_内容连接到lv_缓冲区。
结束循环。
使用“~”转换lv_缓冲区。
做
清除wa_数据。
wa_数据线=lv_缓冲区。
将wa_数据附加到it_数据。
将lv_缓冲区向左移动255个位置。
如果lv_缓冲区是初始的。
出口
恩迪夫。
恩多。
it_目标[]=it_数据[]。“此内容将发送到电子邮件
***  ...
***  ...
***  ...
***调用函数“SO\u NEW\u DOCUMENT\u ATT\u SEND\u API1”
***出口
***文件数据=lv文件数据
***输入输出框='X'
***提交工作='X'
***桌子
***装箱单=it\U装箱单
***object\u header=it\u object\u header

***contents\u bin=it\u target转到NACT t-code,选择你的应用程序并检查存储系统选项卡中的存储模式,它不应该是空的。是的,我在那里放了打印和存档(3),但nast tdarmod仍然来了emty,我在调试中将它改为3…它打印PDF而不存档!你完成了ArchiveLink吗?