Running Totals--在RTF文档中,声明变量进行计算

本文详细介绍了如何在RTF文档中利用变量RtotalVar进行累计值计算。通过设置和更新变量,实现设备平均在线比率的计算,从而得到设备在测试环境中的在线状态统计。最终结果显示设备平均在线比率为72.71%。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

设备运行环境:测试

时间区间:begin_time end_time  共计t.00小时

服务器断线时长:server_time

RtotalVar

设备平均在线比率:0.00  %

注:掉线时长统计有时长误差,因为,最后一次掉线时长在统计截止时间没有数据,无法统计最后一次掉线时间差。

总计时长:

sum online

sum downline

 

设备编号

设备在线时长(秒)

设备掉线时长(秒)

在线比例(%)

F eq_id

online

downline

onlineratio E

 

本文详解:

RtotalVar<?xdoxslt:set_variable($_XDOCTX, 'RTotalVar', 0)?>这是声名一个全局变量,将0值给这个变量

 

0.00<?xdoxslt:set_variable($_XDOCTX, 'RTotalVar', xdoxslt:get_variable($_XDOCTX, 'RTotalVar') + (sum(online)) div (sum(online)+sum(downline))* 100)?>

 在这里做了一个计算,用总时长sum(online)除以总时长加上总掉线时长(sum(online)+sum(downline)),再乘以100%得出的数加上变量'RTotalVar'的值,赋给变量'RTotalVar'

<?xdoxslt:get_variable($_XDOCTX, 'RTotalVar')?>

显示这个变量

 

 

看下结果:72.71%是我们在word文档里计算出来的数字 

 

 

下面是帮助中的例子:

Running Totals

The variable functionality (see Using Variables) can be used to add a running total to your invoice listing report. This example assumes the following XML structure:

<?xml version="1.0" encoding="WINDOWS-1252"?>
<INVOICES>
 <INVOICE>
  <INVNUM>10001-1</INVNUM>
  <INVDATE>1-Jan-2005</INVDATE>
  <INVAMT>100</INVOICEAMT>
 </INVOICE>
 <INVOICE>
  <INVNUM>10001-2</INVNUM>
  <INVDATE>10-Jan-2005</INVDATE>
  <INVAMT>200</INVOICEAMT>
 </INVOICE>
 <INVOICE>
  <INVNUM>10001-1</INVNUM>
  <INVDATE>11-Jan-2005</INVDATE>
  <INVAMT>150</INVOICEAMT>
 </INVOICE>
</INVOICES>

Using this XML, we want to create the report that contains running totals as shown in the following figure:

To create the Running Total field, define a variable to track the total and initialize it to 0. The template is shown in the following figure:

The values for the form fields in the template are shown in the following table:

Form Field

Syntax

Description

RtotalVar

<?xdoxslt:set_variable($_XDOCTX, 'RTotalVar', 0)?>

Declares the "RTotalVar" variable and initializes it to 0.

FE

<?for-each:INVOICE?>

Starts the Invoice group.

10001-1

<?INVNUM?>

Invoice Number tag

1-Jan-2005

<?INVDATE?>

Invoice Date tag

100.00

<?xdoxslt:set_variable($_XDOCTX, 'RTotalVar', xdoxslt:get_variable($_XDOCTX, 'RTotalVar') + INVAMT)?>
xdoxslt:get_variable($_XDOCTX, 'RTotalVar')?>

Sets the value of RTotalVar to the current value plus the new Invoice Amount.
Retrieves the RTotalVar value for display.

EFE

<?end for-each?>

Ends the INVOICE group.

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值