Текущее время: Вт, июл 29 2025, 04:47

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Стандадартная функция Sum в формуляре J_3R_INV1_CONTEXT работает некорретно?
СообщениеДобавлено: Пт, мар 26 2010, 15:13 
Ассистент
Ассистент

Зарегистрирован:
Пн, фев 19 2007, 01:11
Сообщения: 36
Не могу понять почему некорретно отрабатывает стандарная функия подсчета суммы
в формуляре в разных системах. Работаю по удаленки через цитрикс и поэтому отладка скриптов мне недоступна.
Кто нибудь сталкивался с подобным?


function Sum(fieldName)
{
var fieldSum = null;

var startPage = 0;
var endPage = 0;

if (arguments.length == 2) {
startPage = this._GetPageNum(arguments[1]);
endPage = startPage;
} else if (arguments.length == 3){
startPage = this._GetPageNum(arguments[1]);

endPage = this._GetPageNum(arguments[2]);
} else {
startPage = 0;
endPage = xfa.layout.pageCount() - 1;

}


if ((startPage == -1) || (endPage == -1) || (startPage > endPage)) _ThrowPageNumberError(startPage, endPage)

var curPage = startPage;
while (curPage <= endPage) {
// Get the field containers on the current page
var oFields = xfa.layout.pageContent(curPage, "field");
var fieldCount = oFields.length;

// Continue if fields were found on the page
if (fieldCount > 0) {
var i = 0;
for (i=0; i < fieldCount; i++) {
if (oFields.item(i).name == fieldName) {
//Modified by BA
fieldSum += (oFields.item(i).rawValue / 1);
}
}
}

curPage++;
}

if (fieldSum == null) _ThrowFieldNotFoundError(fieldName);
return fieldSum;
}


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стандадартная функция Sum в формуляре J_3R_INV1_CONTEXT работает некорретно?
СообщениеДобавлено: Пт, мар 26 2010, 15:26 
Начинающий
Начинающий

Зарегистрирован:
Пт, мар 26 2010, 15:15
Сообщения: 5
Могу поделиться заготовками, работает 100 %

Итог по странице

var page = xfa.layout.page(this)-1;
var fields = xfa.layout.pageContent(page, "field", 0);
var total = 0;
if (fields != null){
for (var i=0; i <= fields.length-1; i++) {
if (fields.item(i).name == "LFIMG") {
total = total + Number(fields.item(i).rawValue);
}
}
}
this.rawValue = total;

Итог по ведомости

if (xfa.layout.pageCount() == xfa.layout.page(this)){ {
total = 0;
var fields2 = xfa.resolveNodes("data.Main.Table1.Row1[*].LFIMG");
for (var j=0; j <= fields2.length-1; j++) {
total = total + Number(fields2.item(j).rawValue);
} }
}this.rawValue = total;


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Стандадартная функция Sum в формуляре J_3R_INV1_CONTEXT работает некорретно?
СообщениеДобавлено: Пт, мар 26 2010, 16:18 
Ассистент
Ассистент

Зарегистрирован:
Пн, фев 19 2007, 01:11
Сообщения: 36
Спасибо. Опробуем)))


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Стандадартная функция Sum в формуляре J_3R_INV1_CONTEXT работает некорретно?
СообщениеДобавлено: Пт, мар 26 2010, 17:46 
Ассистент
Ассистент

Зарегистрирован:
Пн, фев 19 2007, 01:11
Сообщения: 36
с суммой разобрался. Проблема оказалась не в ней.

Сумма возврашается правильная
Видимо ошибка кроется в преобразовании. Причем на второй странице отрабатывает корретно, а на первой нет.

Когда высчитываются копейки для итогов и число преобразуется в строку на конце образуется какой-то шлак. типа 9999994
и в итоге вместо 43 копеек выводиться 94.

Мистика?)))

var CurrPage = xfa.layout.page(this);
var sum;
var result;

sum = tableCalcs.Sum("N15_ACT_VALUE", CurrPage - 1, CurrPage - 1) * 100;
if ( sum == 0)
this.rawValue = "";
else
{
result = sum.toString();
result = result.substr(result.length-2,2);
this.rawValue = result;
}


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB