表格出力

 

 

 

$("#download").click(function(){
    debugger;
    var tableData = $("#tb_departments").bootstrapTable('getData');
    var exportTableJson = [];
    for(i = 0;i < tableData.length; i++){
        var j = {};
        j.couponName = tableData[i].couponName;
        j.startDate = tableData[i].startDate;
        j.endDate = tableData[i].endDate;
        j.pointNumber = tableData[i].pointNumber;
        j.pointType = tableData[i].pointType;
        j.displayCategoryName = tableData[i].displayCategoryName;
        j.rank = tableData[i].rank;
        j.jan = tableData[i].jan;
        j.itemName = tableData[i].itemName;
        j.storeCodes = tableData[i].storeCodes;
        j.couponImage = tableData[i].couponImage;
        j.recommendFlag = tableData[i].recommendFlag;
        j.hope = tableData[i].hope;
        j.hopeTwo = tableData[i].hopeTwo;
        j.hopeThree = tableData[i].hopeThree;
        j.hopeFour = tableData[i].hopeFour;
        j.updatedUser = tableData[i].updatedUser;
        j.updatedTime = tableData[i].updatedTime;
        j.deleteFlg = tableData[i].deleteFlg;
        j.planStatus = tableData[i].planStatus;
        exportTableJson.push(j);
    }
    exportJsonExcel_(exportTableJson);
})
var exportJsonExcel_ = function(tableData){
    debugger;
    var date = getNowDate();
    var title = "操作履歴" + "_" + date;
    var option = {};
    option.fileName = title;
    option.datas=[{
        sheetData: tableData,
        sheetName: name,
        sheetFilter:['couponName','startDate','endDate','pointNumber','pointType','displayCategoryName','rank','jan','itemName','storeCodes','couponImage','recommendFlag','hope','hopeTwo','hopeThree','hopeFour','updatedUser','updatedTime','deleteFlg','planStatus'],
        sheetHeader:['クーポン名','開始日','終了日','ポイント','タイプ','カテゴリー','表示顺位','JAN','商品名','店舗名コード','オススメ','画像ファイル名','第1希望','第2希望','第3希望','第4希望','更新者名','更新日','効・無効','ステータス']
    }];
    var toExcel = new ExportJsonExcel(option);
    toExcel.saveExcel();
}
function getNowDate(){
    debugger;
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var hour = date.getHours();
    var minute = date.getMinutes();
    var seconds = date.getSeconds;
    if(month >= 1 && month <= 9){
        month = "0" + month;
    }
    if(day >= 1 && day <= 9){
        day = "0" + day;
    }
    var currentdate = year + month + day;
    return currentdate;
}

### 使用SQL语法将数据输出到SAP ALV报表 为了实现从数据库查询的数据通过ALV(Alv List Viewer)展示,在SAP ABAP环境中通常会遵循一系列特定的操作流程。这不仅涉及到了SQL语句的应用,还涉及到如何处理这些查询结果并将其传递给ALV控件以便于可视化显示。 #### 数据获取阶段 利用Native SQL接口API中的`CL_SQL_STATEMENT`类来执行标准的SQL命令以检索所需的信息[^1]: ```abap DATA: lo_stmt TYPE REF TO cl_sql_statement, lt_data TYPE TABLE OF zyour_table. lo_stmt = cl_sql_statement=>create( ). lo_stmt->execute_query( EXPORTING statement = |SELECT * FROM ZYOUR_TABLE| ). lo_stmt->set_param_table( lt_data ). lo_stmt->execute_query( ). ``` 这里假设有一个自定义透明表`ZYOUR_TABLE`作为例子;实际应用时应替换为具体的业务表格名称。 #### 准备ALV输出结构 创建内部表用于存储来自SQL的结果集,并设置相应的字段描述符,这是为了让后续能够顺利地映射至ALV网格视图中。 ```abap TYPES: BEGIN OF ty_alv_output, fieldname1 TYPE c LENGTH 10, fieldname2 TYPE n LENGTH 8, END OF ty_alv_output. DATA: gt_fieldcat TYPE lvc_t_fcat, gs_layout TYPE slis_layout_alv, go_grid TYPE REF TO cl_gui_alv_grid, gr_container TYPE REF TO cl_gui_custom_container. FIELD-SYMBOLS: <fs_line> LIKE LINE OF lt_data. APPEND INITIAL LINE TO gt_fieldcat ASSIGNING FIELD-SYMBOL(<ls_fieldcat>). <ls_fieldcat>-fieldname = 'FIELDNAME1'. <ls_fieldcat>-seltext_m = 'Description for Field Name 1'. APPEND <ls_fieldcat>. CLEAR <ls_fieldcat>. ASSIGN COMPONENT 'FIELDNAME2' OF STRUCTURE sy-tabix TO <ls_fieldcat>. IF sy-subrc EQ 0. <ls_fieldcat>-fieldname = 'FIELDNAME2'. <ls_fieldcat>-seltext_m = 'Description for Field Name 2'. APPEND <ls_fieldcat>. ENDIF. ``` 上述代码片段展示了如何构建一个简单的字段目录(gt_fieldcat),其中包含了两个字段及其对应的中文说明文字。对于更复杂的场景,则需相应调整此部分逻辑。 #### 显示ALV报告 最后一步就是初始化GUI容器对象以及调用ALV Grid实例化方法完成最终呈现工作。 ```abap CREATE OBJECT gr_container EXPORTING container_name = 'OUTPUT_CONTAINER'. " 定义在屏幕上的custom control area ID CREATE OBJECT go_grid EXPORTING i_parent = gr_container. CALL METHOD go_grid->set_table_for_first_display EXPORTING is_layout = gs_layout CHANGING it_outtab = lt_data it_fieldcatalog = gt_fieldcat. ``` 这段脚本负责配置布局参数(gs_layout)并将之前准备好的数据源(lt_data)连同字段分类信息一同提交给ALV组件进行渲染操作。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值