Хранение данных по взаиморасчетам с контрагентами 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Хранение данных по взаиморасчетам с контрагентами



С контрагентами будут вестись разные торговые операции, и, соответственно, платить поставщикам за отгруженный товар, а от покупателей получать деньги за проданный. Для ввода данных по хозяйственным операциям в 1С служит такой объект метаданных, как "Документ". Документами мы сможем вводить данные по приходу/перемещению/отгрузу товара, приходу/расходу денег, но хранить текущее состояние остатков на складе и состояние взаимозадолженности с контрагентами в документах нельзя. Эту информацию можно хранить в справочнике, если добавить соответствующие поля, но это крайне неэффективно и не удобно. Для такой цели в 1С есть специальный механизм. Этот механизм использует объект метаданных "Регистр" — в оперативном учете (для Бухгалтерии - "ПланСчетов", для Расчета - "Журнал расчетов").

Необходимо сконструировать регистр взаиморасчетов. У него будет только два измерения: "Контрагент" и "Договор" и один ресурс: "Сумма". Регистр будет типа регистр остатков. Если сумма будет меньше нуля/ контрагент должен нам, если больше — мы должны контрагенту. Завести один реквизит - "ФлагДвижения" - типа число, который будет принимать следующие значения при изменении состояния регистра:

1 — изменение долга за поставленный нам товар;

2 — изменение долга за проданный нами товар;

3 — изменение долга оплатой за поставленный нам товар;

4 — изменение долга оплатой за проданный нами товар.

 

Идентификатор: Взаиморасчеты Тип: Остатки Периодичность: -
Измерения
Идентификатор Комментарий Тип значения Дополнительно
Контрагент с кем мы ведем дела С.Контрагенты Д
Договор по какому договору С.Договора Д, И
Ресурсы
Идентификатор Комментарий Тип значения Дополнительно
Сумма Сумма долга Число 15.2  
Реквизиты
Идентификатор Комментарий Тип значения Дополнительно
ФлагДвижения тип движения Число 1.0 +

 

Здесь:

Д - отбор движений;

И - отбор итогов;

+ - не отрицательный;

Движения по регистру будут следующие:

Приход — приход товара (общей суммой) либо денег;

Расход - отгруз товара (общей суммой) либо выплата денег.

1. Создать новый регистр.

2. Идентификатор - "Взаиморасчеты", Комментарий "Регистр взаиморасчетов с контрагентами". Измерения, ресурсы, реквизиты - по таблице. Тип регистра — остатки, быстрая обработка движений - по желанию.

 

Теперь необходим документ, который позволит вводить эти взаиморасчеты. Первым документом будет документ "Приход денег".

В любом документе в 1С есть два поля, присутствующих всегда. Это "ДатаДок" - дата документа и "НомерДок" - номер документа. 1С позволяет завести несколько полей, которые будут присутствовать во всех документах. Это "Общие реквизиты" документа. Заведем один такой общий реквизит - "Комментарий" текстового типа длиной не более 100 символов.

3. Войти в ветвь "Документы" дерева метаданных.

4. Установить курсор на раздел "Общие реквизиты".

5. Ввести новый общий реквизит.

6. Идентификатор - "Комментарий", тип - Строка, длина - 100.

Структура документа "Приход денег": кроме полей с датой, номером и комментарием, понадобится указание — кто платит деньги? — "Контрагент", на каком основании он платит деньги? - "Договор", сколько денег он платит? - "Сумма". Типы полей "Контрагент" и "Договор" - соответствующие справочники. Поле "Сумма" - число 9.2. Создать этот документ.

7. Идентификатор - "ПриходДенег", Синоним - "Приход денег". Комментарий — "приход денег от контрагента".

8. Документ будет проводиться - да, при записи документ будет перепроводиться - да.

9. Документ будет принадлежать журналу - да, Создать новый журнал - "ДвижениеДенег"; Журнал - список документов определенного/определенных видов. Имеет экранную форму.

10. И документ, и журнал вставить в экранное меню.

11. Открылось окно свойств документа.

12. В перечень реквизитов шапки занести реквизиты - "Контрагент", "Договор", "Сумма". Табличной (многострочной) части в этом /документе нет.

13. Нумератор не назначен, Периодичность — год: Периодичность - это свойство, которое означает насколько часто будет появляться документ с номером 1.

14. Автоматическая нумерация строк — нет (строк не будет).

15. Оперативный учет - ДА. Этим показывается, что движение осуществляется по регистрам.

16. Создать форму документа.

17. Вставить поле с текстом, где указать название документа.

18. Расставить элементы экранной формы документа поудобнее.

19. В свойствах поля договор на закладке "Дополнительно" в поле "связан с" написать "Контрагент". Справочник "Договора" подчиненный, и в форме документа указывается, что договора будут браться, принадлежащие ранее указанному контрагенту.

20. Сделать, чтобы при выборе другого контрагента поле договор очищалось. Для этого в свойствах поля ввода "Контрагент" на закладке "Дополнительно" написать формулу Контрагент().

21. В модуле формы написать следующую процедуру:

 

Перем СтКонтрагент;

// Это мы добавили переменную, область действия которой

// весь модуль формы документа

Процедура ПриОткрытии()

// Это предопределенная процедура, запускается при возникновении

// события — открытие формы документа

// Она сформировалась автоматически, как мы указали в визарде соз

дания

// документов

ПриЗаписиПерепроводить(1);

Это означает, что если мы проведенный документ изменили, то при

попытке его сохранения программа попытается его перепровести

СтКонтрагент=Контрагент;.

II Инициализируем переменную СтКонтрагент значением реквизита

Контрагент

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

//--------------------------------------------------

Процедура Контрагенте Если КонтрагентоСтКонтрагент Тогда // В

поле Контрагент содержимое изменилось Договор-"';

// Очищаем поле Договор СтКонтрагент-Контрагент;

// Инициализируем переменную СтКонтрагент новым значением

// реквизита Контрагент

КонецЕсли;

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

22. Закрыть форму.

23. Открыть Модуль документа.

24. Переписать процедуру ОбработкаПроведения:

Процедура ОбработкаПроведения()

// Предопределенная процедура, запускающая механизмы регистра

ции движений

Если Контрагент.Выбран()=0 Тогда

II ВыбранО - метод, возвращающий состояние поля ввода = 1, если

поле

// заполнено и 0 если нет Предупреждение("Контрагент не выбран");

// Вызовем на экран информационное окно с сообщением НеПрово

дитьДокумент();

// Указываем, что документ заполнен неправильно - он не должен

быть проведен

КонецЕсли;

Если Договор.Выбран()=0 Тогда Предупреждение("Договор не вы

бран"); НеПроводитьДокумент(); КонецЕсли;

Если Договор.Да гаДоговора>ДатаДок Тогда // Договор еще не был

заключен на дату документа Предупреждение("Неверная дата дого

вора"); НеПроводитьДокумент(); КонецЕсли;

// Теперь будем заполнять поля регистра "Взаиморасчеты"

Регистр.Взаиморасчеты.Контрагент = Контрагент;

Регистр. Взаиморасчеты. До говор = Договор:

Регистр.Взаиморасчеты.Сумма = Сумма;

// Движение — поступление денег за продаваемый нами товар

// ФлагДвижения — 4

Регистр. Взаиморасчеты. ФлагДвижения = 4;

// Наш долг возрос либо долг контрагента уменьшился — на регистр

//пишем сумму приходом

Регистр.Взаиморасчеты. ДвижениеПриходВыполнить();

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

25. Закрыть модуль документа.

26. Закрыть окно свойств документа.

27. Перейти к редактированию журнала.

28. Войти в редактирование журнала "ДвижениеДенег".

29. Добавить новую графу.

30. Идентификатор - "Сумма".

31. В возможных значениях отметить Документ.ПриходДенег.Шапка.Сумма.

32. В выбранных значениях появилось указание на поле документа "Приход денег" "Сумма".

33. Войти в форму списка журнала.

34. Разместить графы журнала как будет удобнее, и поменять им ширину, чтобы все было видно.

35. Закрыть форму списка журнала и окно свойств журнала.

36. Сохранить конфигурацию.

 

Теперь попробуйте набрать несколько документов в системе 1С-Предприятие и попробуйте провести их.

Для того чтобы корректно работать с документами в системе 1С Предприятие, необходимо установить точку актуальности итогов, для чего необходимо:

1. Открыть 1С Предприятие;

2. Через меню "Операции" команда "Управление оперативными итогами";

3. Поставить дату актуальности итогов на 01.10.2003;

4. Нажать [Установить];

5. Появился вопрос "Изменить Точку Актуальности итогов";

6. Ответить [Да];

7. Появилось сообщение, что изменение точки актуальности завершено. Подтвердить получение сообщения;

8. Выйти из окна управления итогами.

 

Для того чтобы посмотреть, какие движения произвел проведенный ранее документ, необходимо:

1. Поставить курсор на документ;

2. Меню "Действия", команда "Движения документа". Появилось окошко. В нем галочка стоит на строке с надписью "Взаиморасчеты". Это означает, что движение было только по этому регистру. Здесь есть еще строчка — "Реквизиты справочников". Документ при проведении может менять значения периодических реквизитов справочников! (Если, конечно, это прописать в процедуре ОбработкаПроведения).

3. Выбрать эту строку. Появилось окно "Движения регистров Взаиморасчеты (Например: Приход денег 1 (02.10.2003))".

 

ЛАБОРАТОРНАЯ РАБОТА №5

Для того чтобы разрабатываемая конфигурация показывала кто, кому, по какому договору и сколько должен в системе 1С:Предприятие, существуют отчеты.

 



Поделиться:


Последнее изменение этой страницы: 2017-02-10; просмотров: 158; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.188.20.56 (0.02 с.)