Форум программистов, компьютерный форум, киберфорум
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/130: Рейтинг темы: голосов - 130, средняя оценка - 4.98
0 / 0 / 0
Регистрация: 13.06.2009
Сообщений: 27

Нужна помощь по 1С 8.1

16.06.2009, 18:20. Показов 24553. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Склады, торговля со скидками,

В качестве исходной использовать каркасную конфигурацию.
Добавить в конфигурацию справочник "МестаХранения" (Склады).
Добавить учет остатков номенклатуры в разрезе складов. Проведение расходной накладной по регистру
"ОстаткиНоменклатуры" организовать с контролем остатка товаров в разрезе складов
и со списанием себестоимости по средневзвешенному (по складу) методу.
Добавить автоматический расчет скидки покупателю при оформлении расходной накладной. Размер скидки зависит от
суммы уже произведенных закупок в предыдущем месяце:
Объем закупки Процент скидки
от 1 000 р 2 %
от 3 000 р 5 %
от 5 000 р 10 %
от 10 000 р 15 %

При подборе товара цена должна рассчитываться следующим образом:
Цена = ЦенаЧист*(100-ПроцСкидки)/100
При изменении клиента должны: устанавливаться соответствующий ему процент скидки;
пересчитываться цены в строках накладной.

Может кто помочь? Нужен код модуля документа «Расходная»
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.06.2009, 18:20
Ответы с готовыми решениями:

СРОЧНО НУЖНА ПОМОЩЬ! Нужна информация о тест оборудовании
Доброго времени суток! Интересует информация (книги, статьи, научные статьи, сайты, зарубежная приветствуется) о проектировании...

Нужна помощь !
Sub Click(Source As Button) Dim session As New notessession, db As notesdatabase, view As notesview Dim uidoc As New NotesDocument ...

Нужна помощь!
Исходные данные: есть форма А и форма Б есть View Б1 и View Б2, оба которые составлены по селекту формы Б (но отображают разные поля) ...

8
0 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 116
16.06.2009, 19:17
Это я как понимаю задание по учебе? Чем конкретно попочь то? задачу полностью решить?
Делать что нить пробовал?
0
0 / 0 / 0
Регистрация: 13.06.2009
Сообщений: 27
16.06.2009, 19:29
Пробовал У меня получился такой код, но:
1) Цена не уменьшается (100-15/100),итог суммы не уменьшается.
2) Процент не находится, хотя выборка в конструкторе запроса проходит нормально.

Собственно,код:


Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
СуммаДокумента=Товары.Итог("Сумма")+Изде ржки.Итог("Сумма");
КонецПроцедуры

Процедура ОбработкаПроведения(Отказ, Режим)

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ТоварыНаСписание.Номенклатура,
| ТоварыНаСписание.Количество КАК КоличествоВДокументе,
| ЕСТЬNULL(ОстаткиНоменклатурыОстатки.Коли чествоОстаток, 0) КАК ОстатокНаСкладе,
| ЕСТЬNULL(ОстаткиНоменклатурыОстатки.Сумм аОстаток, 0) КАК СуммаОстаток,
| ОстаткиНоменклатурыОстатки.Склад
| //ОстаткиНоменклатурыОстатки.СуммаОстаток КАК СуммаОстаток
|ИЗ
| (ВЫБРАТЬ
| РасходнаяТовары.Номенклатура КАК Номенклатура,
| СУММА(РасходнаяТовары.Количество) КАК Количество
| ИЗ
| Документ.Расходная.Товары КАК РасходнаяТовары
| ГДЕ
| РасходнаяТовары.Ссылка = &Ссылка
|
| СГРУППИРОВАТЬ ПО
| РасходнаяТовары.Номенклатура) КАК ТоварыНаСписание
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Ос татки(
| &МоментВремени,
| Номенклатура В
| (ВЫБРАТЬ РАЗЛИЧНЫЕ
| РасходнаяТовары.Номенклатура
| ИЗ
| Документ.Расходная.Товары КАК РасходнаяТовары
| ГДЕ
| РасходнаяТовары.Ссылка = &Ссылка)) КАК ОстаткиНоменклатурыОстатки
| ПО ТоварыНаСписание.Номенклатура = ОстаткиНоменклатурыОстатки.Номенклатура" ;
//Запрос.УстановитьПараметр("", );
//Результат = Запрос.Выполнить();
//Выборка = Результат.Выбрать();
//Пока Выборка.Следующий() Цикл
// КонецЦикла;
Запрос.УстановитьПараметр("МоментВремени ", МоментВремени());
Запрос.УстановитьПараметр("Ссылка", Ссылка);

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


Если Отказ Тогда
Сообщить(ТекстСообщения);
Возврат;
КонецЕсли;


Для Каждого ТекСтрокаТовары Из Товары Цикл
Товар=Новый Структура("Номенклатура",ТекСтрокаТовары .Номенклатура);
КоличествоНаСписание=ТекСтрокаТовары.Кол ичество;

Пока КоличествоНаСписание>0 Цикл
Выборка.НайтиСледующий(Товар);

Если Выборка.ОстатокНаСкладе>=КоличествоНаСпи сание Тогда
Движение = Движения.Продажи.Добавить();
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
Движение.Контрагент = Контрагент;
Движение.Количество = КоличествоНаСписание;
//Процент = Выборка.Процент;
Движение.Сумма = ТекСтрокаТовары.Цена*((100-15)/100)*КоличествоНаСписание;
// Цена = ЦенаЧист*(100-ПроцСкидки)/100
//ОСтатки
Движение = Движения.ОстаткиНоменклатуры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
Движение.Количество = КоличествоНаСписание;
Движение.Сумма = КоличествоНаСписание*Выборка.СуммаОстато к/Выборка.ОстатокНаСкладе;

КоличествоНаСписание=0;
Иначе
Движение = Движения.Продажи.Добавить();
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
Движение.Контрагент = Контрагент;
Движение.Количество = Выборка.КоличествоПартии;
Движение.Сумма = ТекСтрокаТовары.Цена*КоличествоНаСписани е;


// регистр ОстаткиНоменклатуры
Движение = Движения.ОстаткиНоменклатуры.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
Движение.Склад =Склад;
Движение.Количество = ТекСтрокаТовары.Количество;
Движение.Сумма =ТекСтрокаТовары.Сумма ;
//КоличествоНаСписание=КоличествоНаСписани е-Выборка.КоличествоПартии;
КонецЕсли;
КонецЦикла;
Выборка.Сбросить();
КонецЦикла;
//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ


//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
//Для Каждого ТекСтрокаТовары Из Товары Цикл
// регистр ОстаткиНоменклатуры Приход
//Движение = Движения.ОстаткиНоменклатуры.Добавить();
// Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
// Движение.Период = Дата;
// Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
// Движение.Склад = Склад;
// Движение.Количество = ТекСтрокаТовары.Количество;
// Движение.Сумма = ТекСтрокаТовары.Сумма;
//КонецЦикла;
//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

///
//Запрос = Новый Запрос;
// Запрос.Текст = "ВЫБРАТЬ
Запрос.Текст = " ВЫБРАТЬ
|ВЫБОР
| КОГДА СУММА(ПродажиОбороты.СуммаОборот) > 1000
| И СУММА(ПродажиОбороты.СуммаОборот) <= 3000
| ТОГДА 2
| КОГДА СУММА(ПродажиОбороты.СуммаОборот) > 3000
| И СУММА(ПродажиОбороты.СуммаОборот) <= 5000
| ТОГДА 5
| КОГДА СУММА(ПродажиОбороты.СуммаОборот) > 5000
| И СУММА(ПродажиОбороты.СуммаОборот) <= 10000
| ТОГДА 10
| КОГДА СУММА(ПродажиОбороты.СуммаОборот) > 10000
| ТОГДА 15
| ИНАЧЕ 0
| КОНЕЦ КАК Процент
//|ПродажиОбороты.Контрагент
|ИЗ
|РегистрНакопления.Продажи.Обороты(&НачП ериода, &КонПериода, , Контрагент = &Контрагент) КАК ПродажиОбороты";

// |СГРУППИРОВАТЬ ПО
// |ПродажиОбороты.Контрагент";
Запрос.УстановитьПараметр("НачПериода", НачалоМесяца(ДобавитьМесяц(Дата, -1))); // Дата - дата документа
Запрос.УстановитьПараметр("КонПериода", КонецМесяца(ДобавитьМесяц(Дата, -1)));
Запрос.УстановитьПараметр("Контрагент", Контрагент);
// Запрос.УстановитьПараметр("Процент", Процент);
//Процент=2;
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();



/// Выборка = Результат.Выбрать();


КонецПроцедуры

Заранее спасибо!
0
2 / 2 / 0
Регистрация: 06.11.2012
Сообщений: 9
20.06.2009, 14:34
Цитата Сообщение от daffinus
2) Процент не находится, хотя выборка в конструкторе запроса проходит нормально.
видимо я не соображаю что-то.... выборка не пустая, а процент не находит что-ли?
0
0 / 0 / 0
Регистрация: 13.06.2009
Сообщений: 27
20.06.2009, 18:22
Процент считает, но потом никак не использует его и пишет что поле не определено.
0
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 272
21.06.2009, 07:41
в первом тексте запроса чтото я не увидел поля с именем "процент"
0
0 / 0 / 0
Регистрация: 13.06.2009
Сообщений: 27
21.06.2009, 09:32
То есть? Куда его там вставить?
0
2 / 2 / 0
Регистрация: 06.11.2012
Сообщений: 9
21.06.2009, 12:23
я бы сделал соединение запросов по контрагенту
0
0 / 0 / 0
Регистрация: 20.06.2009
Сообщений: 20
23.06.2009, 16:11
http://chistov.spb.ru/publ/6-1-0-15

посмотри здесь и все поймешь....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.06.2009, 16:11
Помогаю со студенческими работами здесь

Нужна помощь
Set dcol = db.Search({@IsUnavailable(AgentCheck) },Nothyng,0), что необходимо дописать в запрос что б выбрать документы из ($Inbox)? грубо...

Нужна помощь!
Не подскажите как следующую ситуацию можно реализовать в Lotus 6.0.3? В форме выбирается поле @DBColumn, подставляется значение, но...

Нужна помощь
Мальчик,17 лет.Полгода назад поставили диагноз: Остеосаркома левой бедренной кости. Огромный очаг поражения. Прошли пять курсов...

Нужна помощь
Access Function СрСпис() Interval = &quot;d&quot; FirstDate = &quot;01.01.06&quot; While Now() &gt; FirstDate СрСпис =...

Нужна помощь
Помогите реализовать кусок кода для MS Access ADOConnection.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;' + 'Data...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru