7.10.15ALV Report

该程序通过ABAP创建一个ALV报告,展示选定日期范围内的每日现金收入详情。报告从数据库表中选择数据,并按不同字段进行组织,如凭证日期、凭证编号、科目编号等。

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

*-----------------------------------------------------------------------

*/ Description :This program creates an ALV report for Daily Cash

* Receipts for a selected date range.

*-----------------------------------------------------------------------

* Global data declaration

TYPE-POOLS: slis.

* Global structure of list

TYPES: BEGIN OF i_cust_invoices, "This is a temp-table where SELECT

"data is to be stored.

bkpf LIKE bkpf, "Acct Doc Header structure

bseg LIKE bseg, "Acct Doc Segment struc

kna1 LIKE kna1, "Customer Master struc

skat LIKE skat, "Chart of Accts struc

END OF i_cust_invoices.

TABLES: bkpf, "TABLES: def of Database tables.

bseg,

kna1,

skat.

*/ Selection and Input Parameters

SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME.

SELECT-OPTIONS: s_belnr FOR bseg-belnr, "Acct Doc number

s_budat FOR bkpf-budat, "Doc Posting Date

s_blart FOR bkpf-blart DEFAULT 'DZ'. "Document Type

SELECTION-SCREEN END OF BLOCK block1.

DATA: gt_fieldcat TYPE slis_t_fieldcat_alv.

DATA: gt_outtab TYPE i_cust_invoices OCCURS 0 WITH HEADER LINE.

DATA: g_repid LIKE sy-repid.

DATA: i_bkpf TYPE bkpf OCCURS 0 WITH HEADER LINE.

* Initialization fieldcatalog

INITIALIZATION.

g_repid = sy-repid.

PERFORM fieldcat_init USING gt_fieldcat[].

* Start of Selection

START-OF-SELECTION.

* Data selection

PERFORM select_data TABLES gt_outtab.

* Display list

END-OF-SELECTION.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

i_callback_program = g_repid

it_fieldcat = gt_fieldcat[]

TABLES

t_outtab = gt_outtab.

*-----------------------------------------------------------------------

* Forms

*-----------------------------------------------------------------------

* Initialization fieldcatalog DEFINITION OF HEADING.

* Fieldnames and ref_fieldnames MUST be UPPER CASE !!

FORM fieldcat_init

USING rt_fieldcat TYPE slis_t_fieldcat_alv.

DATA: ls_fieldcat TYPE slis_fieldcat_alv.

DATA: pos TYPE i VALUE 1.

CLEAR ls_fieldcat.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BKPF-BUDAT'. "Posting Date

ls_fieldcat-ref_fieldname = 'BUDAT'.

ls_fieldcat-ref_tabname = 'BKPF'.

ls_fieldcat-key = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-BELNR'. "Acct Doc Number

ls_fieldcat-ref_fieldname = 'BELNR'.

ls_fieldcat-ref_tabname = 'BSEG'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-HKONT'. "Acct number

ls_fieldcat-ref_fieldname = 'HKONT'.

ls_fieldcat-ref_tabname = 'BSEG'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-KOSTL'. "<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><place w:st="on"><placename w:st="on">Cost</placename><placetype w:st="on">Center</placetype></place>

ls_fieldcat-ref_fieldname = 'KOSTL'.

ls_fieldcat-ref_tabname = 'BSEG'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'SKAT-TXT20'. "Acct Description

ls_fieldcat-ref_fieldname = 'TXT20'.

ls_fieldcat-ref_tabname = 'SKAT'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'SKAT-TXT50'. "Acct Description

ls_fieldcat-ref_fieldname = 'TXT50'.

ls_fieldcat-ref_tabname = 'SKAT'.

LS_FIELDCAT-NO_OUT = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

* ls_fieldcat-col_pos = pos.

* ls_fieldcat-fieldname = 'BSEG-AUGBL'. "Clearing Doc

* ls_fieldcat-ref_fieldname = 'AUGBL'.

* ls_fieldcat-ref_tabname = 'BSEG'.

* APPEND ls_fieldcat TO rt_fieldcat.

* CLEAR ls_fieldcat.

* pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-KUNNR'. "Cust number

ls_fieldcat-ref_fieldname = 'KUNNR'.

ls_fieldcat-ref_tabname = 'BSEG'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'KNA1-NAME1'. "Customer name

ls_fieldcat-ref_fieldname = 'NAME1'.

ls_fieldcat-ref_tabname = 'KNA1'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BKPF-XBLNR'. "Ref Doc (Check) Number

ls_fieldcat-ref_fieldname = 'XBLNR'.

ls_fieldcat-ref_tabname = 'BKPF'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-SHKZG'. "DR/CR <state w:st="on"><place w:st="on">ind</place></state>.

ls_fieldcat-ref_fieldname = 'SHKZG'.

ls_fieldcat-ref_tabname = 'BSEG'.

LS_FIELDCAT-NO_OUT = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-WRBTR'. "Amt in Doc Currency

ls_fieldcat-ref_fieldname = 'WRBTR'.

ls_fieldcat-ref_tabname = 'BSEG'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BKPF-WAERS'. "Currency Key

ls_fieldcat-ref_fieldname = 'WAERS'.

ls_fieldcat-ref_tabname = 'BKPF'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BKPF-KURSF'. "Exchange Rate

ls_fieldcat-ref_fieldname = 'KURSF'.

ls_fieldcat-ref_tabname = 'BKPF'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-DMBTR'. "Amt in Local Currency

ls_fieldcat-ref_fieldname = 'DMBTR'.

ls_fieldcat-ref_tabname = 'BSEG'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-GJAHR'. "Fiscal Year

ls_fieldcat-ref_fieldname = 'GJAHR'.

ls_fieldcat-ref_tabname = 'BSEG'.

LS_FIELDCAT-NO_OUT = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-BUZEI'. "Doc Line #

ls_fieldcat-ref_fieldname = 'BUZEI'.

ls_fieldcat-ref_tabname = 'BSEG'.

LS_FIELDCAT-NO_OUT = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BSEG-BSCHL'. "Posting Key

ls_fieldcat-ref_fieldname = 'BSCHL'.

ls_fieldcat-ref_tabname = 'BSEG'.

LS_FIELDCAT-NO_OUT = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

* <place w:st="on"><placename w:st="on">Cost</placename><placetype w:st="on">Center</placetype></place> is not needed for cash posting - only expenses.

*

* ls_fieldcat-col_pos = pos.

* ls_fieldcat-fieldname = 'BSEG-KOSTL'. "<place w:st="on"><placename w:st="on">Cost</placename><placetype w:st="on">Center</placetype></place>

* ls_fieldcat-ref_fieldname = 'KOSTL'.

* ls_fieldcat-ref_tabname = 'BSEG'.

* APPEND ls_fieldcat TO rt_fieldcat.

* CLEAR ls_fieldcat.

* pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BKPF-BUKRS'. "Company Code

ls_fieldcat-ref_fieldname = 'BUKRS'.

ls_fieldcat-ref_tabname = 'BKPF'.

LS_FIELDCAT-NO_OUT = 'X'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

ls_fieldcat-col_pos = pos.

ls_fieldcat-fieldname = 'BKPF-BLART'. "Document Type

ls_fieldcat-ref_fieldname = 'BLART'.

ls_fieldcat-ref_tabname = 'BKPF'.

APPEND ls_fieldcat TO rt_fieldcat.

CLEAR ls_fieldcat.

pos = pos + 1.

### Elasticsearch 7.10.12 安装教程 #### 准备工作 在安装 Elasticsearch 前,需确认环境已满足其运行需求。建议使用 JDK 版本为 8 或以上版本[^1]。 #### 下载与解压 从官方站点获取 Elasticsearch 的二进制分发版并将其解压缩到目标路径下。例如: ```bash wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.12-linux-x86_64.tar.gz tar -xzf elasticsearch-7.10.12-linux-x86_64.tar.gz mv elasticsearch-7.10.12 /usr/local/ ``` #### 配置文件调整 进入 `config` 文件夹,编辑 `elasticsearch.yml` 来设置集群名称、节点角色以及绑定 IP 地址等参数。 ```yaml cluster.name: my-cluster-name node.name: node-1 network.host: 0.0.0.0 discovery.seed_hosts: ["host1", "host2"] cluster.initial_master_nodes: ["node-1", "node-2"] ``` 上述配置中定义了集群名、当前节点名、网络监听地址以及其他必要的发现选项[^2]。 #### 插件安装 (可选) 如果需要中文分词支持,则可以安装 IK 分析器插件。先下载对应的分析器包,并放置于指定位置后再执行命令加载插件。 ```bash cd /path/to/elasticsearch/plugins/ unzip ../elasticsearch-analysis-ik-7.10.1.zip ./bin/elasticsearch-plugin install file:///path/to/plugin-folder ``` 这里假设已经按照指引准备好所需的 ik 分析器资源文件[^3]。 #### 启动服务 为了实现后台持续运行的效果,在启动脚本后面加上 "&" 符号即可让进程转入后台操作。 ```bash /usr/local/elasticsearch-7.10.12/bin/elasticsearch & ``` 对于多节点情况下的证书同步问题,请参照具体文档说明处理好各实例间的信任关系[^4]。 #### 测试验证 最后可以通过浏览器或者 curl 工具来测试 API 接口是否正常响应数据请求。 ```bash curl -X GET "localhost:9200/" ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值