Crystal Reports: глобальная переменная рабочее общее количество, не отображающееся в заголовке

Я использую следующий example.xul:

<?xml version="1.0"?>
<overlay id="example" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<head></head>
<script type="application/x-javascript" src="jquery.js"></script>
<script type="application/x-javascript" src="example.js"></script>
</overlay>

И вот example.js

(function() {
    jQuery.noConflict();
    $ = function(selector,context) { 
        return new jQuery.fn.init(selector,context||example.doc); 
    };
    $.fn = $.prototype = jQuery.fn;

    example = new function(){};
    example.log = function() { 
        Firebug.Console.logFormatted(arguments,null,"log"); 
    };
    example.run = function(doc,aEvent) {
        // Check for website
        if (!doc.location.href.match(/^http:\/\/(.*\.)?stackoverflow\.com(\/.*)?$/i))  
            return;

        // Check if already loaded
        if (doc.getElementById("plugin-example")) return;

        // Setup
        this.win = aEvent.target.defaultView.wrappedJSObject;
        this.doc = doc;

        // Hello World
        this.main = main = $('<div id="plugin-example">').appendTo(doc.body).html('Example Loaded!');
        main.css({ 
            background:'#FFF',color:'#000',position:'absolute',top:0,left:0,padding:8
        });
        main.html(main.html() + ' - jQuery <b>' + $.fn.jquery + '</b>');
    };

    // Bind Plugin
    var delay = function(aEvent) { 
        var doc = aEvent.originalTarget; setTimeout(function() { 
            example.run(doc,aEvent); 
        }, 1); 
     };
    var load = function() { 
        gBrowser.addEventListener("DOMContentLoaded", delay, true); 
    };
    window.addEventListener("pageshow", load, false);

})();
5
задан LapplandsCohan 30 August 2012 в 09:30
поделиться

3 ответа

Running-Total Fields, in my experience, only work in the footer sections.

You will need to create a manual running total.

Add a formula field to the Details section that populates a Global variable with whatever you are trying to capture. Something like:

//use WhileReadingRecords if the values can be gathered as the report pulls in values from the database.  Otherwise, use WhilePrintingRecords. 
WhileReadingRecords;
Global Stringvar CurrentVers;
//logic here to capture what you want
CurrentVers:=...

Add another formula field to the Header section. Add these two lines to it:

WhilePrintingRecords;
Global Stringvar CurrentVers;
4
ответ дан 14 December 2019 в 01:10
поделиться

Если {#CurrentVers} является обычным полем промежуточного результата, вы можете разместить его непосредственно в заголовке страницы, а не прибегать к дополнительной формуле. Я не вижу здесь необходимости в каком-либо поле формулы, за исключением случаев, когда в составе {#CurrentVers} есть что-то необычное, а промежуточная сумма «наибольшее число» не требует ничего необычного.

0
ответ дан 14 December 2019 в 01:10
поделиться

Я разобрался ..

Мне пришлось добавить подотчет к основному отчету.Я скопировал основной отчет и переименовал его в подотчет. В подотчет я добавил общую переменную, а затем передал ее в основной отчет. Хитрость заключается в том, чтобы поместить подотчет в тот же заголовок группы, но в отдельный раздел над разделом, который необходимо подавить. На самом деле я добавил следующие разделы:

Новый раздел (та же группа - я разместил здесь вложенный отчет; не подавлять) Новый раздел (та же группа - я разместил здесь значение общей переменной; не подавлять) Исходный раздел (та же группа, у которой есть заголовок, который мне нужно подавить на основе промежуточной суммы)

1
ответ дан 14 December 2019 в 01:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: