![]() |
![]() |
![]() |
|
Сколько можно взять за такой отчет? | ☑ | ||
---|---|---|---|---|
0
zaimon
08.02.07
✎
13:09
|
//=========================================================
//Вызывается при двойном щелчке по списку Процедура СЗКонтрагент_ПриВыборе() Если СЗКонтрагент.РазмерСписка() > 0 Тогда ВыбранноеЗначение = СЗКонтрагент.ПолучитьЗначение(СЗКонтрагент.ТекущаяСтрока()); ОткрытьФорму(ВыбранноеЗначение.ТекущийЭлемент()); КонецЕсли; КонецПроцедуры //========================================================= Процедура СЗКонтрагент_ДобавитьЗначение() Спр = СоздатьОбъект("Справочник.Контрагенты"); Если Спр.Выбрать("Выберите элемент", "Основная") = 1 Тогда СЗКонтрагент.ДобавитьЗначение(Спр.ТекущийЭлемент()); КонецЕсли; КонецПроцедуры //========================================================= Процедура СЗКонтрагент_УдалитьЗначение() Если СЗКонтрагент.ТекущаяСтрока() > 0 Тогда СЗКонтрагент.УдалитьЗначение(СЗКонтрагент.ТекущаяСтрока()); КонецЕсли; КонецПроцедуры //========================================================= Процедура СЗКонтрагент_УдалитьВсе() СЗКонтрагент.УдалитьВсе(); КонецПроцедуры //========================================================= Процедура СЗКонтрагент_МножественныйВыбор() ОткрытьПодбор("Справочник.Контрагенты", "Основная",,1); КонецПроцедуры //========================================================= Процедура ОбработкаПодбора(ВыбЗначение) Если ТипЗначенияСтр(ВыбЗначение) = "Справочник" Тогда СЗКонтрагент.ДобавитьЗначение(ВыбЗначение.ТекущийЭлемент()); СЗКонтрагент.ТекущаяСтрока(СЗКонтрагент.РазмерСписка()); КонецЕсли; КонецПроцедуры //========================================================= Процедура СЗКонтрагент_ЗначениеВверх() Если СЗКонтрагент.ТекущаяСтрока() > 1 Тогда СЗКонтрагент.СдвинутьЗначение(-1, СЗКонтрагент.ТекущаяСтрока()); КонецЕсли; КонецПроцедуры //========================================================= Процедура СЗКонтрагент_ЗначениеВниз() Если (СЗКонтрагент.ТекущаяСтрока() > 0) И (СЗКонтрагент.ТекущаяСтрока() < СЗКонтрагент.РазмерСписка()) Тогда СЗКонтрагент.СдвинутьЗначение(1, СЗКонтрагент.ТекущаяСтрока()); КонецЕсли; КонецПроцедуры //******************************************* // Процедура генерации запроса Сформировать. // Процедура Сформировать() Перем Запрос, ТекстЗапроса, Таб; //Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ВыбНачПериода по ВыбКонПериода; |Обрабатывать НеПомеченныеНаУдаление; |Фирма = Регистр.ОстаткиТМЦ.Фирма; |Номенклатура = Регистр.ОстаткиТМЦ.Номенклатура; |Склад = Регистр.ОстаткиТМЦ.Склад; //|Регистр.ОстаткиТМЦ.ТекущийДокумент.Реализация.Склад, //| Регистр.ОстаткиТМЦ.ТекущийДокумент.РеализацияРозница.Склад, //| Регистр.ОстаткиТМЦ.ТекущийДокумент.ПоступлениеТМЦ.Склад, //| Регистр.ОстаткиТМЦ.ТекущийДокумент.ВозвратОтПокупателя.Склад; |ТекущийДокумент = Регистр.ОстаткиТМЦ.ТекущийДокумент.Реализация.ТекущийДокумент, | Регистр.ОстаткиТМЦ.ТекущийДокумент.РеализацияРозница.ТекущийДокумент, | Регистр.ОстаткиТМЦ.ТекущийДокумент.ПоступлениеТМЦ.ТекущийДокумент, | Регистр.ОстаткиТМЦ.ТекущийДокумент.ВозвратОтПокупателя.ТекущийДокумент; |Количество = Регистр.ОстаткиТМЦ.Количество; |Контрагент = Регистр.ОстаткиТМЦ.ТекущийДокумент.Реализация.Контрагент, Регистр.ОстаткиТМЦ.ТекущийДокумент.РеализацияРозница.Контрагент, Регистр.ОстаткиТМЦ.ТекущийДокумент.ПоступлениеТМЦ.Контрагент, Регистр.ОстаткиТМЦ.ТекущийДокумент.ВозвратОтПокупателя.Контрагент, Регистр.ОстаткиТМЦ.ТекущийДокумент.ВозвратПоставщику.Контрагент; |ЦенаПрод = Регистр.ОстаткиТМЦ.ЦенаПрод; |Функция НачОстат = НачОст(Количество); |Функция КоличествоРасход = Расход(Количество) когда(((ТекущийДокумент.Вид()=""Реализация"")и (не(Контрагент в СЗКонтрагент)))или((ТекущийДокумент.Вид()=""РеализацияРозница"")и (не(Контрагент в СЗКонтрагент)))); |Функция КоличествоРасходФилиалы = Расход(Количество) когда(((ТекущийДокумент.Вид()=""Реализация"")и (Контрагент в СЗКонтрагент))или((ТекущийДокумент.Вид()=""РеализацияРозница"")и (Контрагент в СЗКонтрагент))); |Функция КоличествоПриход = Приход(Количество)когда(ТекущийДокумент.Вид()=""ПоступлениеТМЦ""); |Функция ВозвратИЗРозн = Приход(Количество)когда((ТекущийДокумент.Вид()=""ВозвратОтПокупателя"")и (не(Контрагент в СЗКонтрагент))); |Функция ВозвратВнутри = Приход(Количество)когда((ТекущийДокумент.Вид()=""ВозвратОтПокупателя"")и (Контрагент в СЗКонтрагент)); |Функция КонОстат = КонОст(Количество); |Группировка Фирма; |Группировка Склад; |Группировка Номенклатура без групп; // |Группировка Контрагент без групп; |Условие(Фирма в ВыбФирма); |Условие(Номенклатура в ВыбНоменклатура); /// |Условие(Склад.РозничныйСклад=0); |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; // Подготовка к заполнению выходных форм данными запроса Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); // Заполнение полей "Заголовок" Таб.ВывестиСекцию("Заголовок"); Состояние("Заполнение выходной таблицы..."); Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0); Пока Запрос.Группировка(1) = 1 Цикл // Заполнение полей Фирма //Таб.ВывестиСекцию("Фирма"); Пока Запрос.Группировка(2) = 1 Цикл // Заполнение полей Склад //Таб.ВывестиСекцию("Склад"); Пока Запрос.Группировка(3) = 1 Цикл // Заполнение полей Номенклатура //Таб.ВывестиСекцию("Номенклатура"); // Пока Запрос.Группировка(4) = 1 Цикл // Заполнение полей Контрагент Попытка печАдрес=Запрос.Контрагент.ЮрФизЛицо.ФактАдрес; Исключение печАдрес=Запрос.Контрагент.ОсновнойДоговор; КонецПопытки; Таб.ВывестиСекцию("Контрагент"); // КонецЦикла; КонецЦикла; КонецЦикла; КонецЦикла; // Заполнение полей "Итого" //Таб.ВывестиСекцию("Итого"); // Вывод заполненной формы Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать", ""); КонецПроцедуры 3 Часа моей работы. По меркам маленького города. |
|||
2
ASV
08.02.07
✎
13:10
|
уже не возьмешь, ты его бесплатно отдал всем
|
|||
3
Эльниньо
08.02.07
✎
13:11
|
(0) А сколько заплатишь за анализ твоей нетленки?
|
|||
4
ASV
08.02.07
✎
13:11
|
(0) он работает вообще??
|
|||
5
Ёпрст2
08.02.07
✎
13:12
|
(0) Имхо, как бы еще и самому доплачивать не пришлось бы ...
|
|||
6
Magic74
08.02.07
✎
13:12
|
Чтобы не парится 1строка - 1 минута, а там исходя из стоимости часа в городе - достаточно честно
|
|||
7
Midaw
08.02.07
✎
13:13
|
Страна, Край?
|
|||
8
колодина
08.02.07
✎
13:13
|
(6) ничего себе расчет....
|
|||
9
Ёпрст2
08.02.07
✎
13:14
|
+5 Особенно порадовало двигать значения в списке для фильтра ... вот только накуа ?
И зачем писать ТекущийДокумент нужных видов....? |
|||
10
mikecool
08.02.07
✎
13:15
|
(0) возьми с полки пирожок... (с) не помню откуда :-)
|
|||
11
Magic74
08.02.07
✎
13:15
|
(8) Я не утверждаю, что это идеал :))))
Ес-но не стоит это озвучивать клиенту ибо некоторые 100 строк стоят дороже другой 1000 |
|||
12
КонецЦикла
08.02.07
✎
13:16
|
(6) Под столом
|
|||
13
Midaw
08.02.07
✎
13:17
|
(6) тогда надо добавить ещё комментов! )
|
|||
14
КонецЦикла
08.02.07
✎
13:17
|
(0) Возьми 15-20 баксов
Непонятна цель отчета вообще... |
|||
15
Magic74
08.02.07
✎
13:19
|
(12)Ну ладно Вам набросились - я просто предложил самую простую схему которую видел - согласен не идеал, но иногда проще пользоваться ей
|
|||
16
Midaw
08.02.07
✎
13:20
|
(14) называется из области, надо ) а чё скажу, то и надо.. ну будет значит! ) падумаешь ещё "один" отчетик нарисую красивый )
|
|||
17
Advan
08.02.07
✎
13:20
|
(0)Бери больше!
|
|||
18
fabrikant
08.02.07
✎
13:21
|
(6) Я сегодня весь день голову ломал над одной проблемой. Итог 78 строк рабочего кода. Значит я никуа не заработал?
Может пустых циклов накуячить? |
|||
19
Ирен
08.02.07
✎
13:21
|
500 рублей
|
|||
20
DrShad
08.02.07
✎
13:22
|
(0) а он тока адреса выдает?
|
|||
21
Midaw
08.02.07
✎
13:22
|
(19) как можно округлять в меньшую сторону.. (: или там тарелка супа умножается на три часа?
|
|||
22
zaimon
08.02.07
✎
13:22
|
(19) 500 рублей, да наш бывший хапуга 1Сник по совместительству все 3000 взял бы. Даже жако.
|
|||
23
Midaw
08.02.07
✎
13:24
|
(22) а знаешь почему жалко? потому что взялся за некчомную задачу, неоценённую по реальной стоимости )
|
|||
24
Ирен
08.02.07
✎
13:25
|
(22) ну дак и ты 3000 тогда возьми. кто мешает то?
|
|||
25
Advan
08.02.07
✎
13:27
|
(22)ТОгда ты бери 3500!!!
|
|||
26
Midaw
08.02.07
✎
13:30
|
кстати, с некоторых пор я знаю как определяют стоимость работы 1с-ника. тот чувак сделал за 3000, а этот гад с меня берёт 6000. мне сегодня сказал один человек, что программу писать четыре месяца.. из той же области ) а я то парусь с вычислениями..
|
|||
27
zaimon
08.02.07
✎
13:33
|
Боюсь что потом кто нибудь скажет вот хапуга! Ваще обнаглел. Я просто никогда этим не занимался, на дяденьку все работаю.
|
|||
28
Ирен
08.02.07
✎
13:34
|
(27) это знакомые или нет? еще и от этого цена зависит иногда:)
|
|||
29
mergan
08.02.07
✎
13:37
|
два пенса... и не пенсем больше
|
|||
30
zaimon
08.02.07
✎
13:39
|
(28) Нет!
|
|||
31
Ц_У
08.02.07
✎
13:41
|
Бери больше кидай дальше...(с)
|
|||
32
Ирен
08.02.07
✎
13:42
|
(30) все зависит от того, сколько за это готовы они заплатить. реально отчет стоит 1000-1500.. не больше.. но если они привыкли 3000 платить, то это уже решать тебе.
|
|||
33
Advan
08.02.07
✎
13:43
|
(27)Ну и? - пусть говорят - они просто завидуют.
|
|||
34
Эльниньо
08.02.07
✎
13:44
|
(6)
Если А = Б Тогда ... и так далее. |
|||
35
Magic74
08.02.07
✎
13:47
|
(18) см (11) у меня тоже такое было - зависит от сложности задачи, можно еще коэффициент ввести на который умножать кол-во строк, который будет отображать сложность)))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |