通知单的长文本和合作伙伴功能获得

通知单的透明表:

VIQMEL 视图,通知单的主要属性

Qmsm 任务表

Qmur 主题

Qmih 故障表

Qmel 主表

Qmfe 项目 (长文本 缺陷定位 等)

T356_t 优先级

Qpgt 代码组文本 qpct 代码文本

目录的定义(KATALOGART):

一,长文本

长文本的存储位置: 抬头:STXH 行项目:STXL

关键字:TDNAMETDOBJECT, TDID TDSPRAS

TDNAME : 号码

TDOBJECT (同一类对象的 tdobject 都相同)

TDID

TDSPRAS :语言

由于长文本数据保存在 STXL 不能正常读取,所有应该利用一个函数 :

READ_TEXT

我们调用它,并且提供上述的几个参数即刻读取到指定的长文本。由于长文本很长,所以我们读取出来的数据可能是很多条数据。所以我们需要遍历读取到的数据,然后进行拼接。

保存用另一个函数 save_text ,只是用这个函数保存至今还没有保存成功。

例子: 通知单的长文本分为五类:抬头,原因,工序,结果,评估

类别

Tdname

Tdobject

Tdid

tdspras

备注

抬头

通知单号

QMEL

LTXT

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

原因

通知单号+qmfe-fenum

QMFE

LTXT

Qmfe-fecod = 0010

工序

通知单号+qmfe-fenum

QMFE

LTXT

Qmfe-fecod = 0020

结果

通知单号+qmfe-fenum

QMFE

LTXT

Qmfe-fecod = 0030

评估

通知单号+qmfe-fenum

QMFE

LTXT

Qmfe-fecod = 0040

代码实例:

<!--StartFragment --> <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S31 { font-style: italic; color: #808080; } .L1S32 { color: #3399FF; } .L1S52 { color: #0000FF; } </style>TYPES:BEGINOFty_text,
qmnumLIKEqmel-qmnum,"通知单号
fenumLIKEqmfe-fenum,
fecodLIKEqmfe-fecod,
kurztext(20)TYPEc,
text(1000)TYPEc,"
ENDOFty_text.

<!--StartFragment --> <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S52 { color: #0000FF; } </style>DATA:gt_textTYPETABLEOFty_text,
gs_textTYPEty_text.

<!--StartFragment --> <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S31 { font-style: italic; color: #808080; } .L1S32 { color: #3399FF; } .L1S33 { color: #4DA619; } .L1S52 { color: #0000FF; } </style> FORMget_text2USINGv_qmnum.
DATA:td_nameLIKEstxh-tdname,
fenumLIKEqmfe-fenum,
l_qmnum(12)TYPEc,
c_fenum(4)TYPEc
.
DATAitab_lineLIKEtlineOCCURS0WITHHEADERLINE.

CLEAR:gt_text,gs_text.

SELECTa~qmnuma~fenuma~fecodb~kurztext
INTOCORRESPONDINGFIELDSOFTABLEgt_text
FROMqmfeASa
INNERJOINqpctASb
ONa~fekat=b~katalogart
ANDa~fegrp=b~codegruppe
ANDa~fever=b~version
ANDa~fecod=b~code
WHEREa~qmnum=v_qmnum
ANDa~indtx='X'
ANDb~sprache=1
ANDb~katalogart='C'
ANDb~codegruppe='CLM-01'
ANDb~version='000001'
.

CALLFUNCTION'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input=v_qmnum
IMPORTING
output=l_qmnum.

IFsy-subrc=0.

LOOPATgt_textINTOgs_text.
c_fenum=gs_text-fenum.
PERFORMzero_doUSINGc_fenum4.
CONCATENATEl_qmnumc_fenumINTOtd_name.


CLEARitab_line.REFRESHitab_line.

CALLFUNCTION'READ_TEXT'"读取通知内容长文本
EXPORTING
client=sy-mandt
id='LTXT'
language=sy-langu
name=td_name
object='QMFE'
TABLES
lines=itab_line
EXCEPTIONS
not_found=4.

IFsy-subrc=0.
LOOPATitab_line.
CONCATENATEgs_text-textitab_line-tdlineINTOgs_text-text."把多行长文本加在一起
ENDLOOP.
MODIFYgt_textFROMgs_text.
ENDIF.
ENDLOOP.

ENDIF.
td_name=l_qmnum.
CLEARitab_line.REFRESHitab_line.

CALLFUNCTION'READ_TEXT'"读取通知内容长文本
EXPORTING
client=sy-mandt
id='LTXT'
language=sy-langu
name=td_name
object='QMEL'
TABLES
lines=itab_line
EXCEPTIONS
not_found=4.

IFsy-subrc=0.
CLEARgs_text.
LOOPATitab_line.
CONCATENATEgs_text-textitab_line-tdlineINTOgs_text-text."把多行长文本加在一起
ENDLOOP.
gs_text-qmnum=v_qmnum.
gs_text-fecod='0000'.
gs_text-kurztext='抬头长文本'.
APPENDgs_textTOgt_text.
ENDIF.
ENDFORM.

二,合作伙伴

Ihpa 合作伙伴 (QM+通知单号 关联 通知单)

Tpar 合伙人 角色定义(合作伙伴功能及描述,合作伙伴编号类型)

TVPA 合作伙伴编号类型表 (合作伙伴编号类型及描述,对应的数据表格)

tpart 合作伙伴功能定义文本

Objnr = QM+通知单号 objty = QMC

合作伙伴定义如下(PARVW)

读取方法:

首先通过 PM_Partner_get 获得合作伙伴列表

参数:Objnr = QM+qmel-qmnum(12)

返回:IHPA_TAB (合作伙伴列表)

然后调用 PM_Partner_read 获得 diadrc_wa

参数:parvw = ihpa_tab-pa

Parnr = ihpa_itab-parnr

Objnr = ihpa_itab-objnr

1. 合作伙伴功能

1. 名称

1. Table

1. Field1

1. Field2

1. 备注

1. AB

2. 负责部门

3.

2. HRP1000

2. Objid

2. Stext

2.

1. VW

4. 负责人

5.

3.

3.

3.

3.

1. AU

6. 创始人

4.

4.

4.

4.

1. HR

7. 制造厂商

5. LFA1

5. Lifnr

5. Name1

5.

1. AG

8. 售达方

6. KNA1

6. Kunnr

6. Name1

6. 界面中显示SP

1. VU

9. 负责的用户

7.

7.

7.

7.

1. LF

10. 供应商

8. LFA1

8. Lifnr

8. Name1

8. 界面中显示VN

1. KU

11. 协调者

9.

9.

9.

9.

1. CP

12. 联系人

10.

10.

10.

10.

2.

13.

11.

11.

11.

11.

代码实例:

<!--StartFragment --> <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S31 { font-style: italic; color: #808080; } .L1S32 { color: #3399FF; } .L1S52 { color: #0000FF; } </style>*合作伙伴
TYPES:BEGINOFty_parter,
vtextTYPEtpart-vtext,"功能
parnrTYPEihpa-parnr,"(合作伙伴)
name1TYPEdiadrcpd-name1,"名称
addr(200)TYPEc,"地址

city1TYPEdiadrcpd-city1,"城市
tel_numberTYPEdiadrcpd-tel_number,"电话号码
fax_numberTYPEdiadrcpd-fax_number,"传真
sort1TYPEdiadrcpd-sort1,"排序
ENDOFty_parter.

<!--StartFragment --> <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S52 { color: #0000FF; } </style>DATA:gt_parterTYPETABLEOFty_parter,
gs_parterTYPEty_parter.

<!--StartFragment --> <style type="text/css"> SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L1S31 { font-style: italic; color: #808080; } .L1S32 { color: #3399FF; } .L1S33 { color: #4DA619; } .L1S52 { color: #0000FF; } </style>FORMget_parterUSINGv_qmnum.
DATA:it_part_hTYPETABLEOFihpavbWITHHEADERLINE.
DATA:wa_dLIKEdiadr.
DATA:v_textTYPEtpart-vtext.
DATAl_objnrTYPEonr00-objnr.
DATAl_qmnum(12)TYPEc.
DATAtabixTYPEsy-tabix.
CLEAR:it_part_h,wa_d,gt_parter,gs_parter.

CALLFUNCTION'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input=v_qmnum
IMPORTING
output=l_qmnum.

CONCATENATE'QM'l_qmnumINTOl_objnr.
READTABLEgt_mainINTOgs_mainWITHKEYqmnum=v_qmnum.
tabix=sy-tabix.
*读取合作伙伴列表
CALLFUNCTION'PM_PARTNER_GET'
EXPORTING
objnr=l_objnr
TABLES
ihpa_tab=it_part_h.
IFsy-subrc=0.
LOOPATit_part_h.
*读取合作伙伴细节
CALLFUNCTION'PM_PARTNER_READ'
EXPORTING
parvw=it_part_h-parvw
parnr=it_part_h-parnr
objnr=it_part_h-objnr
IMPORTING
diadr_wa=wa_d
vtext=v_text.
IFsy-subrc=0.
gs_parter-parnr=it_part_h-parnr.
gs_parter-name1=wa_d-name1.
gs_parter-city1=wa_d-city1.
gs_parter-tel_number=wa_d-tel_number.
gs_parter-fax_number=wa_d-fax_number.
gs_parter-sort1=wa_d-sort1.
gs_parter-vtext=v_text.
CONCATENATEwa_d-name1','wa_d-city1','
wa_d-tel_number','
wa_d-fax_number','
wa_d-sort1
INTOgs_parter-addr.
APPENDgs_parterTOgt_parter.
*把负责人和协调者放到主表中
IFit_part_h-parvw='VW'ANDgs_main-fzrISINITIAL.
gs_main-fzr=wa_d-name1.
MODIFYgt_mainFROMgs_mainINDEXtabix.
ENDIF.
IFit_part_h-parvw

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值