Как изменить журнал "Счета"?
Показывать по
10
20
40
сообщений
- 1
- 2
01.09.2008
11:51
#1
Заводится документ "Счет", на основании счета делается "Отгрузка..." либо "Оказание услуг...". Подскажите, как сделать так, чтоб бухгалтер в журнале "Счета" видел, по каким из счетов была отгрузка или оказаны услуги?
01.09.2008
12:17
#2
Это задача разной сложности в зависимости от того какой вы конфигурацией пользуетесь (вы не указали какой именно). В некоторых типовых конфигурациях существует учет "удовлетворенности покупателей", например в Производство+Услуги+Бухгалтерия 7.7 для этого придуман регистр Заявки, откуда можно достать эту информацию. В комплексной тоже примерно такая штука... А у вас. Неизвестно. Какая у вас конфигурация?
P.S. Многие вопросы форума остаются без толкового ответа, а то и без любого ответа вовсе из за недостаточности информации, которую выдает спрашивающий. Порой прочитаешь вопрос... и вроде есть мысли по сути проблемы, но из за недостаточности информации подумаешь и ... вообще ничего не пишешь, так как количество вариантов ответа слишком велико.
P.S. Многие вопросы форума остаются без толкового ответа, а то и без любого ответа вовсе из за недостаточности информации, которую выдает спрашивающий. Порой прочитаешь вопрос... и вроде есть мысли по сути проблемы, но из за недостаточности информации подумаешь и ... вообще ничего не пишешь, так как количество вариантов ответа слишком велико.
01.09.2008
14:24
#4
Ну, значит все грустно. Реально в бухгалтерии 7.7 такой учет не организован. Документ Счет присутствует в конфигурации, можно сказать, чтобы просто его напечатать. А вот отследить толком что из счета было отгружено покупателю, а что нет - никак. Тут можно пойти, как минимум, двумя путями:
1. Решение задачи в упродщенном виде. Анализируем, были ли на основании счеты выписаны хоть какие нибудь Реализации и если да, то в журнале счетов выводим пользователю какой то значок.
2. Решение задачи с высокой точностью. Придумываем какой нибудь алгоритм для того, чтобы сравнить табличную часть счета и все реализации, которые сделаны после него с целью выяснения того насколько полностью удовлетворен покупатель, потом исходя из того, что получается, ставим в журнале счетов какой нибудь значок или формируем строку сведений. Этот способ более точен, но требует больших вычислительных мощностей, так что работа с журналом будет, возможно, ощутимо "тормозной".
И тот и другой способ требует приглашения специалиста. Самое важное то, что вы должны понимать, что и тот и другой способ сделает вашу конфигурацию "нетиповой". Обновлять ее будет сложнее и, возможно, специалиста нужно будет приглашать для каждого обновления, что потребует от вас денежных затрат.
1. Решение задачи в упродщенном виде. Анализируем, были ли на основании счеты выписаны хоть какие нибудь Реализации и если да, то в журнале счетов выводим пользователю какой то значок.
2. Решение задачи с высокой точностью. Придумываем какой нибудь алгоритм для того, чтобы сравнить табличную часть счета и все реализации, которые сделаны после него с целью выяснения того насколько полностью удовлетворен покупатель, потом исходя из того, что получается, ставим в журнале счетов какой нибудь значок или формируем строку сведений. Этот способ более точен, но требует больших вычислительных мощностей, так что работа с журналом будет, возможно, ощутимо "тормозной".
И тот и другой способ требует приглашения специалиста. Самое важное то, что вы должны понимать, что и тот и другой способ сделает вашу конфигурацию "нетиповой". Обновлять ее будет сложнее и, возможно, специалиста нужно будет приглашать для каждого обновления, что потребует от вас денежных затрат.
01.09.2008
14:31
#5
Thorvardr, подскажите, плз, как программно определить, вводились ли отгрузка или услуги по данному счету?
01.09.2008
15:32
#6
"Самый простой способ "в лоб":
1. В документы "ВыполнениеЭтапаРабот", "ОказаниеУслуг", "РасходнаяНакладная" добавляем реквизит ДокументОснование.
2. В алгоритмах форм этих документов в процедуре ВводНаОсновании(ДокОсн) добавляем ДокументОснование=ДокОсн; Таким образом, при работе и использовании механизма ввода на основании пользователи станут создавать связку между счетом и документами, которые выписаны на его основании.
3. В журнале счетов добавляем колонку вида "Текст" (синяя буква "Т" такая), в нее пишем формулу с любим именем, например ПоказатьСтатусСчета().
4. Присваиваем табличной части картинку, которая станет пиктограммой, например ту, которая выглядит как красная галочка и белое поле.
5. В модуле журнала счетов описываем алгоритм нужной нам функции:
Перем ДокиПодч;
Функция ПриОткрытии()
...
ДокиПодч=СоздатьОбъект("Документ");
КонецФункции
Функция ПоказатьСтатусСчета()
Если ПустоеЗначение(ТекущийДокумент)=1 Тогда
Возврат(2);
Иначе
Если ДокиПодч.ВыбратьПодчиненныеДокументы(,,ТекущийДокумент)=1 Тогда
Пока ДокиПодч.ПолучитьДокумент()=1 Цикл
Если ДокиПодч.Проведен()=1 Тогда
Возврат(1);
КонецЕсли;
КонецЦикла;
Возврат(2);
Иначе
Возврат(2);
КонецЕсли;
КонецЕсли;
КонецФункции
Еще раз обращаю ваше внимание на то, что вы сделайте вашу конфигурацию этими изменениями нетиповой, обновляться будет сложнее. По крайней мере, перед изменениями базы ОБЯЗАТЕЛЬНО сохраните ее."
1. В документы "ВыполнениеЭтапаРабот", "ОказаниеУслуг", "РасходнаяНакладная" добавляем реквизит ДокументОснование.
2. В алгоритмах форм этих документов в процедуре ВводНаОсновании(ДокОсн) добавляем ДокументОснование=ДокОсн; Таким образом, при работе и использовании механизма ввода на основании пользователи станут создавать связку между счетом и документами, которые выписаны на его основании.
3. В журнале счетов добавляем колонку вида "Текст" (синяя буква "Т" такая), в нее пишем формулу с любим именем, например ПоказатьСтатусСчета().
4. Присваиваем табличной части картинку, которая станет пиктограммой, например ту, которая выглядит как красная галочка и белое поле.
5. В модуле журнала счетов описываем алгоритм нужной нам функции:
Перем ДокиПодч;
Функция ПриОткрытии()
...
ДокиПодч=СоздатьОбъект("Документ");
КонецФункции
Функция ПоказатьСтатусСчета()
Если ПустоеЗначение(ТекущийДокумент)=1 Тогда
Возврат(2);
Иначе
Если ДокиПодч.ВыбратьПодчиненныеДокументы(,,ТекущийДокумент)=1 Тогда
Пока ДокиПодч.ПолучитьДокумент()=1 Цикл
Если ДокиПодч.Проведен()=1 Тогда
Возврат(1);
КонецЕсли;
КонецЦикла;
Возврат(2);
Иначе
Возврат(2);
КонецЕсли;
КонецЕсли;
КонецФункции
Еще раз обращаю ваше внимание на то, что вы сделайте вашу конфигурацию этими изменениями нетиповой, обновляться будет сложнее. По крайней мере, перед изменениями базы ОБЯЗАТЕЛЬНО сохраните ее."
04.09.2008
22:28
#7
Ну еще можно "кривой путь": разбирать строку комментария, ЕСЛИ ЕГО НЕ ПОРТЯТ. Что не всегда бывает.
05.09.2008
07:14
#8
Мое мнение, что для таких случаев как раз и не нужно "валить все в кучу". Пусть типовой журнал останется "типовым", а всю необходимую информацию можно получить во внешнем отчете. Внешний отчет не "испортит" конфигурацию, а вот что в Бух 7.7 нет механизма подчиненных документов для счета это печально.
05.09.2008
09:45
#9
"автор просто хочет видеть на какой счет была выписана отгрузка, на какой пока ещё нет. Так ведь?
Для этого доработка небольшая: В журнале "счета" кидаем текстовую колонку, называем её ДокПодч, а поле формула пишем название функции ОпределитьОснование()
в модуле журнала пишем:
Функция ОпределитьОснование()
Док=СоздатьОбъект("Документ");
Рез="""";
Док.ВыбратьПодчиненныеДокументы(ТекущийДокумент);
Пока Док.ПолучитьДокумент()=1 Цикл
Если (Док.Вид()="РасходнаяНакладная") ИЛИ (Док.Вид()="ОказаниеУслуг") тогда
Рез=Док.ТекущийДокумент();
КонецЕсли;
КонецЦикла;
Возврат Рез;
КонецФункции"
Для этого доработка небольшая: В журнале "счета" кидаем текстовую колонку, называем её ДокПодч, а поле формула пишем название функции ОпределитьОснование()
в модуле журнала пишем:
Функция ОпределитьОснование()
Док=СоздатьОбъект("Документ");
Рез="""";
Док.ВыбратьПодчиненныеДокументы(ТекущийДокумент);
Пока Док.ПолучитьДокумент()=1 Цикл
Если (Док.Вид()="РасходнаяНакладная") ИЛИ (Док.Вид()="ОказаниеУслуг") тогда
Рез=Док.ТекущийДокумент();
КонецЕсли;
КонецЦикла;
Возврат Рез;
КонецФункции"
05.09.2008
13:36
#10
"
> Док.ВыбратьПодчиненныеДокументы(ТекущийДокумент);
В типовой конфигурации Счету ничего не подчинено!
Еще раз: если НЕ менять типовую, то поможет только "разбор" Комментария как строки, с "выуживанием" номера и даты счета. Но это - "кривой" путь. Иначе -портить типовую!!!
А ОНО всегда надо?
"
> Док.ВыбратьПодчиненныеДокументы(ТекущийДокумент);
В типовой конфигурации Счету ничего не подчинено!
Еще раз: если НЕ менять типовую, то поможет только "разбор" Комментария как строки, с "выуживанием" номера и даты счета. Но это - "кривой" путь. Иначе -портить типовую!!!
А ОНО всегда надо?
"
- 1
- 2
Читают тему
(гостей: 1)