Вход | Регистрация


1С:Предприятие ::

Метки:Обучение и сертификация

Пытаюсь выполнить задание

Я
   77
18.02.04 - 13:48
Пытаюсь выполнить задание из ТиС:
Необходимо разработать конфигурацию, которая позволяет вести серийный учет медикаментов в аптеке…
-    Справочник “Медикаменты” с дополнительным периодическим реквизитом “РозничнаяЦена”, значение которого должно изменяться только документами;
-    Справочник “Серии”, подчиненный справочнику “Медикаменты”, имеет дополнительный реквизит “ПредельнаяДатаРеализации”. В форме списка справочника “Серии” этот реквизит должен присутствовать и при просмотре записи справочника должны быть отсортированы по нему;

Объясните для чего справочник серии??? Мне не понятно его реальное предназначение, если можно, то пример из жизни.
 
 
   dimoff
1 - 18.02.04 - 13:50
Значит предельная дата в конфе будет иметь значение, а для одной позиции даты могут быть разными для того и серии.
   shura
 
2 - 18.02.04 - 14:03
В серии ЛС (лек. средства) закодирована дата выпуска и срок годности (что-то типа того). Т.о. одно и то-же ЛС может иметь разные серии (в зависимости от партии). По сути дела это "Партии" и каждая партия имеет свой срок реализации.

ЗЫ: Жена провизор, так что я наслушался на эту тему ;)).
   romix
 
3 - 18.02.04 - 14:05
В аптеку поступает ящик с колесами - это видимо серия (партия). Она имеет дату, до которой эти колеса надо продать.
   77
4 - 18.02.04 - 14:10
Вопрос снят спасибо всем
   shura
 
5 - 18.02.04 - 14:15
(3) Нет, не совсем. Колеса имеют СРОК ГОДНОСТИ.
   77
6 - 18.02.04 - 14:27
Стоп, а вот что-то не понятно: " В форме списка справочника “Серии” этот реквизит должен присутствовать и при просмотре записи справочника должны быть отсортированы по нему;" -  как это? Партия (серия) имеет разные сроки реализации. По идее-то одна должна быть дата. Как это так получается?
:(
   Bzzzzz
 
7 - 18.02.04 - 14:43
(6) а чего непонятного  то?
у каждой серии своя дата выпуска и соответсвенно своя ПредДатаРеализации
   77
8 - 18.02.04 - 15:51
(7) Справочник “Серии”, подчиненный справочнику “Медикаменты”, имеет дополнительный реквизит “ПредельнаяДатаРеализации”.
Получается, что можно несколько дат ввести “Серии” – смысл в чём?
   Композитор
 
9 - 18.02.04 - 16:05
(77) Это значит, что каждый элемент справочника Медикаменты может иметь сколько угодно элементов подчиненного справочника Серии. У каждого элемента Серия - своя ДатаРеалиазации.
   Bzzzzz
 
10 - 18.02.04 - 16:07
(8) Вот эту фразу "Получается, что можно несколько дат ввести “Серии” – смысл в чём?" что-то я совсем не понял.
Есть товар. У него много серий. У каждой серии есть "ПредельнаяДатаРеализации".
Когды ты будешь списывать серии, то будешь по этому реквизиту отбирать те, которые раньше других "испортятся".
 
  Рекламное место пустует
   Vova
 
11 - 22.07.04 - 20:44
Кто нить уже выполнил это задание?????

Поделитесь люди!!!!!!!!!!!!
Плиз......
   Vova
 
12 - 22.07.04 - 20:55
Люди - не проходите мимо!!!
Помогите!!!!

У кого нить есть выполненое задание "Пример N3 экзаменационного задания"
Или кто выполнял - Отзовитесь!
Я начал с нуля и мне дали выполнить это задание! У меня не получаеться его выполнить, а время поджимает....

Помогите плиз.
   SnarkHunter
 
13 - 22.07.04 - 20:56
Нравятся мне дети с незамутненным сознанием...
   Vova
 
14 - 22.07.04 - 20:57
Помоги умоляю.....
   SnarkHunter
 
15 - 22.07.04 - 21:01
Зачем ты так унижаешься?
   Vova
 
16 - 22.07.04 - 21:07
Я просто замучился делать это задание! И у меня не получаеться Сформировать список значений для выбора серий и еще пару проблем.....
   Vova
 
17 - 22.07.04 - 21:08
Ты можешь мне помочь????
   GrayT
 
18 - 22.07.04 - 22:18
(12)Может сам попробуешь, а то так нулем и останешься
   vovik
19 - 22.07.04 - 23:12
Я ж не говрил, что я не пробовал...
я стока пробовал...что мозги вскипают, а рядом никого нет чтобы совета даже спросить...и примеров подходящих нет...
Вот и прошу о помощи....:(
   vova=vovik
20 - 22.07.04 - 23:14
И сичас пробую - ничего не выходит...Ну не совсем ничего
   Vova
 
21 - 22.07.04 - 23:16
Помогите кто чем может!!!
   tsd
 
22 - 23.07.04 - 01:06
(0) звиняйте батенька, но если Вы не понимаетте, что такое посерийный учет, то Вам в фармацее делать нечего. Рекомендую обратиьт внимание на уже существующие конфы (не обзязательно покупать, типа изучите).
На последний вопрос предположеие, чисто для удобства просмотра и выбора:))
   Vova
 
23 - 24.07.04 - 03:23
Вот это волшебный форум, я понимаю!!! Ничего не добьешься - все жадные чтоль или умные???

Грусно - а хотелось просто - посмотреть на пример - разобраться!!! :(
   VladZagorsky
24 - 24.07.04 - 05:12
(23) Форум волшебный, потому как им "рулит" Волшебник... :)

Что касается твоей проблемы - ДУМАЙ !!!!!  Если не можешь решить эту задачу, значит ты не готов для этого...  Значит тебе стоит задуматься, а стоит ли тебе заниматься 1С ????
   Vova
 
25 - 24.07.04 - 05:46
Ты безусловно прав...

Но я почти ее решил, остались некоторые ньюансы...

Эх! Да што тут говорить...
   SnarkHunter
 
26 - 24.07.04 - 08:50
Только идиоты и дети могут на протяжени двух суток стонать и умолять, не задав ни одного вопроса по существу... Да что тут говорить...
   Guk
 
27 - 24.07.04 - 08:58
(0) Давно пытаешься?
У меня за 6 лет, ни одного фантика. Попорбую сдать хоть на восьмёрку...
PS: хотя куда мне, я же на itland, не хожу...
   Vova
 
28 - 26.07.04 - 00:14
Тут тема по выполнению конкретного задания! Верно? Я и спрашываю - кто-нить выполнял? Прошу поделиться - не для того чтобы тупо содрать, а разобраться и осмыслить. Мне просто в задании не понятны некоторые задачи! Я не могу представить как оно должно выглядеть.

Например: С пробитием чека мне не понятно - там нужно проводить каждую строку отдельно или как? (тогда получаеться что в одном чеке - одна строка т.е. один медикамент ????) или несколько - тогда я не пойму как реализовать процедуру проводки...

Хотелось просто посмотреть как люди сделали! Но на этом "волшебном форуме" все жадные и умные.... Я недавно начал в 1С разбираться... И я думаю что не грех заделиться примером, хоть ни этим то хоь подобным, че нить про СпискиЗначений и про проводки подобных документов...

P.S. А вот конкретный вопрос: Как вызвать сформированый список значений для выбора элемента, после выбора которого значение заноситься в следущу ячейку строки?
И еще - как сделать в списке несколько колонок?

Вот кусок из задания:

После выбора медикамента автоматически должна запуститься процедура анализа остатков серий. При этом, если в отделе осталась только одна серия, ее наименование появляется в графе «Серия», если же осталось несколько серий, то должен быть сформирован список значений для выбора, в котором высвечивается номер серии, предельная дата реализации и количество (остаток) в отделе. После выбора серии в графе «Количество» вводится необходимое значение, а графа «Сумма» пересчитывается.
   SnarkHunter
 
29 - 26.07.04 - 05:01
Один уважаемый мною камрад по поводу подобных постов сказал следующее:
 
"В силу биологических особенностей (см. Бурлящие гормоны) подросток редко о чём рассуждает разумно его терзают эмоции, именно они для него - на первом плане.

Здесь его обидели, там незаметили, тут на него вообще насрали и обманули -
вот на эти кажущиеся подростку действия идёт исключительно эмоциональная реакция.

Плюс крайне малый жизненный опыт, который временно не позволяет вырасти пониманию. Это проходит, но читать это неинтересно, потому что разума в этом нет."
   Vova
 
30 - 26.07.04 - 10:07
С чего ты решил, что я подросток ?!?!?! :О
И интересно, сколько же тебе лет, такому умному???
   SiMazx
 
31 - 26.07.04 - 10:09
Забавный ты...
   колодина
32 - 26.07.04 - 10:18
в принципе это довольно легкое задание. однако готова ответить на конкретные вопросы. выбор серий организуется достаточно просто: пользователь выбрал медикамент, после этого вы должны для данного медикамента выгрузить из подчиненного справочника все серии. если она одна - сразу отразите ее в колонке. если их много - дайте юзеру выбрать из списка. попробуйте хотя бы написать это, чтобы при вопросах спрашивать: что здесь не верно.
   SnarkHunter
 
33 - 26.07.04 - 10:24
(30)Подросток в данном контексте - это не возраст, а состояние души... Некоторые из него так и не выходят...
 
А фраза "такому умному" напоминает классические возгласы "а еще шляпу надел" или "а еще в очках"...
 
  Рекламное место пустует
   Нога судьбы
34 - 26.07.04 - 11:07
Антоном попахивает... Это он решил раздвоиться. Ему одного себя кажется мало :)
   SiMazx
 
35 - 26.07.04 - 11:09
(34) Не-а... Антон веееежливый...
   Нога судьбы
36 - 26.07.04 - 11:31
"Мне просто в задании не понятны некоторые задачи! Я не могу представить как оно должно выглядеть."
"на этом "волшебном форуме" все жадные и умные...."
"я думаю что не грех заделиться примером, хоть ни этим то хоь подобным, че нить про СпискиЗначений и про проводки подобных документов..."
"Как вызвать сформированый список значений для выбора элемента, после выбора которого значение заноситься в следущу ячейку строки?"
"как сделать в списке несколько колонок?"

(35) Все же мне кажется, что такие фразы специально придумывались, чтобы вызвать определенную реакцию у публики. Возможно не Антоном, а его другом :), но цель та же.
   Vova
 
37 - 26.07.04 - 11:33
Извините если кого обидел...
   Vova
 
38 - 26.07.04 - 11:44
to колодина: я со списками разобрался как тока написал этот вопрос! :)
Но мне нада не толко выгрузить с подчиненного справочника все серии, а толко те которые остались в даном отделе, т.е. выгружать надо из регистра...
Я написал процедуру, все в ней работает, кроме условия Рег.Серии=СпрСерии.Наименование:

Процедура ВыборСерии()
    
СписокСерий = создатьОбъект("СписокЗначений");
СпрСерии = СоздатьОбъект("Справочник.Серии");
Рег=СоздатьОбъект("Регистр.ОстаткиСерий");
СпрСерии.ИспользоватьВладельца(Медикамент);
СпрСерии.ВыбратьЭлементы();
Пока СпрСерии.ПолучитьЭлемент()>0 Цикл
    Рег.ВыбратьИтоги();
    Пока Рег.ПолучитьИтог() = 1 Цикл 
        Если (Рег.Отдел=Отдел) И (Рег.Серии = СпрСерии.Наименование)  Тогда
            СписокСерий.ДобавитьЗначение(Рег.Серии,""+СпрСерии.Наименование+"   "+Рег.Серии+"    "+СпрСерии.ПредельнаяДатаРеализации+"      Остаток = "+Рег.Количество);
        КонецЕсли;
    КонецЦикла;
КонецЦикла;

Если СписокСерий.ВыбратьЗначение(ВыбСерии, "Выберите серию")=1 Тогда
    Серии=ВыбСерии;        
КонецЕсли;
   
КонецПроцедуры

Если что-то понятнов том что я написал, скажите - что не так???
   sam_sam
 
39 - 26.07.04 - 11:54
ТаблицаРегистра = СоздатьОбъект("ТаблицаЗначений");
Рег             = СоздатьОбъект("Регистр.ОстаткиСерий");
Рег.РассчитатьНа(ДатаДок);
Рег.УстановитьФильтр(Отдел)//установить фильтр шо есть в отделе

Рег.ВыгрузитьИтоги("ТаблицаРегистра");
ТаблицаРегистра.Сортировать("+Партия")//отсортировать хоть по чему нибудь
а там, чего хочешь то и делай.
   User63
40 - 26.07.04 - 12:01
Вот, хотел Vove скинуть кусок программы с Конфигуратора,а кодировка не совпадает. Может, кто посоветует, как быстро можно все это сделать?
   SnarkHunter
 
41 - 26.07.04 - 12:03
(38) Рег.Серии = СпрСерии.ТекущийЭлемент()
(40) При копировании русскую раскладку поставь...
   User63
42 - 26.07.04 - 12:14
Рег=СоздатьОбъект("Регистр.ОстаткиТоваров");
    Рег1=СоздатьОбъект("Регистр.РезервыТоваров");
    ТаблОст = СоздатьОбъект("ТаблицаЗначений") ;
    ВыбратьСтроки();
    Пока ПолучитьСтроку()=1 Цикл
        Если Товар.ВидТовара=Перечисление.ВидыТоваров.Услуга Тогда Продолжить; КонецЕсли;
        ТекКол = Колич(Контекст);   // пересчитано с учетом коэффициента

        
       //   сформируем остатки товара по сериям 

       //   отсортированным по сроку годности и дате поступления

        Рег.УстановитьФильтр( Фирма, Товар, Склад,) ;
        Рег.ВыгрузитьИтоги(ТаблОст,1,1) ;
        ТаблОст.НоваяКолонка("СрокГодности") ; 
        ТаблОст.НоваяКолонка("ДатаПрихода") ;
        ТаблОст.ВыбратьСтроки();
        Пока ТаблОст.ПолучитьСтроку()=1 Цикл
            ТаблОст.СрокГодности = ТаблОст.Партия.СрокГодности; 
            ТаблОст.ДатаПрихода  = ТаблОст.Партия.ДатаПрихода;
        КонецЦикла;    
        ТаблОст.Сортировать("СрокГодности,ДатаПрихода");
        
       //    сформируем движения регистра по сериям для текущего товара

        ТаблОст.ВыбратьСтроки();    // здесь  - остатки товара по сериям

        Пока  (ТаблОст.ПолучитьСтроку()=1) и (ТекКол>0) Цикл    
            Остаток  = ТаблОст.ОстатокТов;  
            ТекСерия = ТаблОст.Партия;
            Если Константа.ПродаватьРезерв=Нет Тогда          
                Резерв =      Рег1.СводныйОстаток(Фирма,Товар,Склад,ТекСерия,,"ОстатокТов");
            Иначе
                Резерв = 0;
            КонецЕсли;    
            Остаток =  Остаток - Резерв;
            Если Остаток<=0 Тогда Продолжить; КонецЕсли; 
            СписаноКол = МИН(Остаток,ТекКол);
            ТекКол = ТекКол - СписаноКол;
            
            Регистр.РезервыТоваров.ПривязыватьСтроку(НомерСтроки);
            Регистр.РезервыТоваров.ДвижениеПриход(Фирма,Товар,Склад,ТекСерия,ТекущийДокумент(),СписаноКол);
        КонецЦикла;    
        
       // проверим недосписанный остаток - если он >0 значит, не хватило серий из списка

       //   предупредим и не проведем документ...

        Если ТекКол>0 Тогда// Товар по сериям не зарезервирован полностью!!!

            Сообщение="На фирме "+СокрЛП(Фирма.Наименование)+" свободный остаток товара "+СокрЛП(Товар.Наименование)+" на складе "
                            +СокрЛП(Склад)+" недостаточен для резервирования";
            НеПроводить(Контекст,Сообщение,ПервыйВывод);
            Продолжить;  // Прервать; - проверим заодно и товары по остальным строкам документа

        КонецЕсли;
    КонецЦикла;
   Vova
 
43 - 26.07.04 - 12:52
спасиба SnarkHunter! заработало, а почему не работало Рег.Серии=СпрСерии.Наименование ???  Странно, если подумать, то должно и так работать...

спасиба User63 за пример, я думаю он мне тоже пригодиться...
   SnarkHunter
 
44 - 26.07.04 - 12:56
(43)Как раз если подумать, то так не должно работать...
   Vova
 
45 - 26.07.04 - 13:27
а почему? СпрСерии.Наименование  содержит тоже значение что и СпрСерии.ТекущийЭлемент()...

Еще вопрос можно, в какую процедуру это нада запихнуть, чтобы после выбора Медикамента выскакивал список значений, а то я запихнул в процедуру которую вписал в Формулу Поля Ввода "Медикамент" и теперь Список значений  два раза выскакивает...



Список тем форума
  Рекламное место пустует
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует