修改文本CREATE_TEXT/SAVE_TEXT/READ_TEXT

之前项目上在修改交货单文本,遇到一个问题:

发现用SAVE_TEXT修改后,文本没有变.

但是READ_TEXT文本,发现能读出来.

只是显示的没修改.

后来想起,有时候表里有个字段,是控制是否去显示的.

比如 AUFK-LTEXT:长文本存在.

954d3ecb4fa14c1d07a150f98792b5e5.jpeg

订单长文本

如果这个字段为空

就算修改了长文本,还是不会显示的……

SAVE_TEXT修改不了

就用 CREATE_TEXT试了试,是可以显示出来的

代码如下:

PARAMETERS:

      FID             LIKE  THEAD-TDID          DEFAULT 'ZR01',

      FNAME       LIKE  THEAD-TDNAME   DEFAULT '8000002140',

      FOBJECT     LIKE  THEAD-TDOBJECT DEFAULT 'VBBK',

      TEXT           TYPE  STRING                   DEFAULT '1234567890'.

DATA: FLINES  LIKE TABLE OF TLINE WITH HEADER LINE.

"文本内容

FLINES-TDLINE = TEXT.

APPEND FLINES.

"修改文本

CALL FUNCTION 'CREATE_TEXT'

  EXPORTING

    FID                  = FID

    FLANGUAGE   = '1'

    FNAME           = FNAME

    FOBJECT         = FOBJECT

*   SAVE_DIRECT = 'X'

*   FFORMAT       = '*'

  TABLES

    FLINES            = FLINES

  EXCEPTIONS

    NO_INIT         = 1

    NO_SAVE       = 2

    OTHERS         = 3.

字段解释如下

如果修改表头文本

0210310f63bfc35f55920932f5d7ae15.jpeg

查看文本日志:

421d6fff84345e88c933d452d8c28389.jpeg

一般头对象object都是vbbk,id zr01是业务配的,

FNAME:对于抬头,就是凭证号

                对于行项目,是凭证+行项目,比如: 8000002140000010

                 8000002140000010(凭证8000002140,行项目000010)

行项目的object多数是 vbbp.具体按下图查看

5a2a2b3e5958b3438438008073282a00.jpeg

7779e705669c94e2fa39280fa71eb921.jpeg

另外还有种说法

"SAVE MODE DIRECT参数打上X,默认值为空。打上X后,STXH表里才会更新长文本的信息。否则只能用READ_TEXT读取出长文本,但在前台看不到"

0dec304ce028e5bfadf59f11f67e9f0c.jpeg

我自己并没有试,有兴趣的朋友可以自己测试下,也欢迎把测试结果留言反馈给我们~

198e3817ccd5a2e02f1b97747efd9ce3.jpeg

48bb12cc46df0ac800c30dbc45e43ec1.gif

更多S4精彩内容,环境关注微信社区:

93928122913a1ebb0baf3d59551edc11.jpeg

好的,让我来回答你的问题。以下是一个使用 Tkinter 和 FileDialog 实现打开和保存文件的示例程序: ```python import tkinter as tk from tkinter import filedialog class App(tk.Frame): def __init__(self, master=None): super().__init__(master) self.master = master self.pack() self.create_widgets() def create_widgets(self): self.text = tk.Text(self) self.text.pack() self.open_button = tk.Button(self, text="打开文件", command=self.open_file) self.open_button.pack(side="left") self.save_button = tk.Button(self, text="保存文件", command=self.save_file) self.save_button.pack(side="left") def open_file(self): file_path = filedialog.askopenfilename() if file_path: with open(file_path, "r") as file: file_content = file.read() self.text.delete("1.0", tk.END) self.text.insert(tk.END, file_content) def save_file(self): file_path = filedialog.asksaveasfilename(defaultextension=".txt") if file_path: with open(file_path, "w") as file: file_content = self.text.get("1.0", tk.END) file.write(file_content) root = tk.Tk() app = App(master=root) app.mainloop() ``` 这个程序创建了一个简单的文本编辑器,包含打开文件和保存文件的按钮。当用户点击“打开文件”按钮时,程序会弹出一个文件对话框,用户可以选择要打开的文件。当用户点击“保存文件”按钮时,程序会弹出一个文件对话框,用户可以选择保存文件的路径和文件名。程序会将用户输入的内容保存到文件中。 希望这个示例对你有帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值