у меня сразу два вопроса :)
Модераторы: m0p3e, edward_K, Модераторы
у меня сразу два вопроса :)
Как вывести в ард отчете, кол-во рабочих часов по плану, за определенный месяц?
Кроме как сложить поля daychas[1]….daychas[31] в таблице klndr, больше не могу ничего придумать. Если есть что-нибудь проще, буду рад увидеть.
И еще один вопрос можно ли через значение переменной обратиться к полю таблицы….написать что то вроде
For(i:=1,i<=31, i:=i+1)
Sum:=sum+klndr.daychas[i];
Спасибо за внимание.
Кроме как сложить поля daychas[1]….daychas[31] в таблице klndr, больше не могу ничего придумать. Если есть что-нибудь проще, буду рад увидеть.
И еще один вопрос можно ли через значение переменной обратиться к полю таблицы….написать что то вроде
For(i:=1,i<=31, i:=i+1)
Sum:=sum+klndr.daychas[i];
Спасибо за внимание.
Re: у меня сразу два вопроса :)
Den, скажи как
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: у меня сразу два вопроса :)
Sorry...недосмотрел мессаг. Нет, так не прокатит.Придется тебе внутри for if или case использовать.
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: у меня сразу два вопроса :)
Почему нет?
Не уверен (не пробовал), но может прокатит такая фишка:
Var S: string; // строковое представление результата вычислений
Var ErrorInfo: string; // если были сообщения об ошибке в результате вычислений
For(i:=1,i<=31, i:=i+1)
begin
ErrorInfo := ''; // значение по умолчанию
S := Expression('Sum+KlnDr.DayChas[' + string(i) + ']' , ErrorInfo ) ;
IF (ErrorInfo = '')
then Sum := Sum + Double(S) ;
else // если возникла ошибка
begin
Sum := Sum + 0;
Message ('При подсчете суммы ... возникла ошибка следующего содержания: '+ErrorInfo) ;
end;
end;
Не уверен (не пробовал), но может прокатит такая фишка:
Var S: string; // строковое представление результата вычислений
Var ErrorInfo: string; // если были сообщения об ошибке в результате вычислений
For(i:=1,i<=31, i:=i+1)
begin
ErrorInfo := ''; // значение по умолчанию
S := Expression('Sum+KlnDr.DayChas[' + string(i) + ']' , ErrorInfo ) ;
IF (ErrorInfo = '')
then Sum := Sum + Double(S) ;
else // если возникла ошибка
begin
Sum := Sum + 0;
Message ('При подсчете суммы ... возникла ошибка следующего содержания: '+ErrorInfo) ;
end;
end;
-
- Местный житель
- Сообщения: 474
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Сибирь-матушка
- Контактная информация:
Re: у меня сразу два вопроса :)
Все прокатит ...
var i:integer;
var sum:double;
sum:=0;
for(i:=1;i<32;i:=i+1)
{
sum:=sum+klndr.chasf[i];
}
В словаре поля, имеющие в названии
"[№ какой-то]" объявлены массивами, и работа с ними на языке ADV производится как с обычными массивами ...
А то выражения строковые какие-то, преобразования типов зачем-то - а потом простой отчетик полчаса выдается ...
var i:integer;
var sum:double;
sum:=0;
for(i:=1;i<32;i:=i+1)
{
sum:=sum+klndr.chasf[i];
}
В словаре поля, имеющие в названии
"[№ какой-то]" объявлены массивами, и работа с ними на языке ADV производится как с обычными массивами ...
А то выражения строковые какие-то, преобразования типов зачем-то - а потом простой отчетик полчаса выдается ...
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: у меня сразу два вопроса :)
Ну вот..умные люди подсказали.
Re: у меня сразу два вопроса :)
Даааа ... и чтобы я без них делал...Спасибо всем