Создать бухгалтерскую справку 7.7 по ОЛЕ

1. pentanom 25 13.02.19 17:39 Сейчас в теме
Из ЗУП 3.1 нужно создать бухгалтерскую справку в УСН 7.7
Пишу:
 	Док_77 = База77.EvalExpr("СоздатьОбъект(""Документ.БухгалтерскаяСправка"")");
 	Счет_77 = База77.EvalExpr("СоздатьОбъект(""Счет"")");
	
	Счет_77.НайтиПоКоду("70");
	Счет70=Счет_77.ТекущийСчет();

	Счет_77.НайтиПоКоду("20");
	Счет20=Счет_77.ТекущийСчет();
	Сообщить(Счет20.Код);
	Сообщить(Счет20.Наименование);
	
	Для Каждого СтрокаДокументы Из ТабДокументы Цикл
		Док_77.ВыбратьДокументы(НачалоМесяца(СтрокаДокументы.Документ.Дата),КонецМесяца(СтрокаДокументы.Документ.Дата));
		Поз=0;
		Сообщить(Док_77.НомерДок);
		Пока Док_77.ПолучитьДокумент()=1 Цикл
			Поз = Найти(Док_77.СодержаниеОперации,"\ОЗПБУ\");
			Если Поз > 0 Тогда
				Прервать;
			КонецЕсли;
		КонецЦикла;
		Если Поз  = 0 Тогда
			Док_77.Новый();
			Док_77.СодержаниеОперации= "\ОЗПБУ\";
//			Док_77.НомерДок=Прав(СтрокаДокументы.Документ.Номер,6);
			Док_77.ДатаДок= СтрокаДокументы.Документ.Дата;
			Док_77.Записать();
		КонецЕсли;
		Док_77.УдалитьСтроки();
		
		Док_77.НоваяСтрока();
		Док_77.СчетДт  = Счет20.ТекущийСчет();
		Док_77.СчетКт  = Счет70;
		
		Док_77.Записать();
		
	КонецЦикла;
	
	База77 = Неопределено;
Показать
но счета Дт и Кт пустые. Где ошибка ?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. ishelper 13.02.19 17:59 Сейчас в теме
(1)
Счет_77 = База77.EvalExpr("СоздатьОбъект(""Счет"")");

ИМХО, после этого в супе коде не хватает:

	Счет_77.ИспользоватьПланСчетов(ОсновнойПланСчетов());


Но можно продолжать упорствовать: "Наименование выводится правильно".
5. pentanom 25 13.02.19 18:04 Сейчас в теме
(4)Добавил следующее:
	Операция = База77.CreateObject("Операция");
	Операция.Новая();
	Операция.ДатаОперации = СтрокаДокументы.Документ.Дата;
	
	Операция.НоваяПроводка();
	Операция.НомерЖурнала = "ЗП";

	Операция.Дебет.Счет = Счет20;
			
	Операция.Кредит.Счет = Счет70;

	Операция.Сумма = 200000;
			
	Операция.Записать();
Показать

А здесь счета записываются. Получается, что я не учитываю некоторую особенность бухгалтерской справки. Какую ?
6. ishelper 13.02.19 18:07 Сейчас в теме
(5)
Получается, что я не учитываю некоторую особенность бухгалтерской справки. Какую ?
Опять-таки ИМХО: такую, что в свойствах реквизитов табличной части бухстправки "СчетДт" и "СчетКт" недвусмысленно указано: "Счет.Основной".
7. pentanom 25 13.02.19 18:11 Сейчас в теме
(6)И куда это нужно вставить ?
8. ishelper 13.02.19 18:14 Сейчас в теме
(7)
И куда это нужно вставить ?
Я уже написал, см. (4)
9. pentanom 25 13.02.19 18:23 Сейчас в теме
(8)Вставил так:
Счет_77 = База77.CreateObject("Счет");
Счет_77.ИспользоватьПланСчетов(База77.ОсновнойПланСчетов());

Результат отрицательный.
12. acanta 13.02.19 19:53 Сейчас в теме
(9) для применения метода "использовать план счетов" создают объект бухгалтерские итоги, а не счет.
Счет20 - База77.счетпокоду("20").
13. ishelper 13.02.19 21:05 Сейчас в теме
(12)
для применения метода "использовать план счетов" создают объект бухгалтерские итоги, а не счет.
То, что это делают обычно - еще не значит делают всегда: вот код из типовой Бухгалтерии 6.37 (свежее нету под рукой), модуль формы списка ФормаСписка справочника ФП_Справочники:
Счет		=	СоздатьОбъект("Счет"); 
Счет.ИспользоватьПланСчетов(ПланСчетов);
Счет.НайтиПоКоду(Значение);
Значение	=	Счет.ТекущийСчет();

Как говорится, "найдите отличия".

Лично мне теперь мерещится, что агрегатные объекты не передаются из 7.7 в 8.х по OLE, а только простые - число, строка, дата. Поэтому Счет20.Наименование - работает, а ссылка на Счет20 - фигвам.
14. pentanom 25 13.02.19 21:51 Сейчас в теме
(13)
а ссылка на Счет20 - фигвам.
Но здесь сам счет и не передается. Он ищется уже в 7.7 по коду.
16. user856012 14 14.02.19 01:35 Сейчас в теме
(14)
Он ищется уже в 7.7 по коду.
Лучше поискать по запросу "1С 7.7 OLE счет по коду" в Гугле.

Тадаммм! Первая же ссылка: https://www.forum.mista.ru/topic.php?id=272030 (читать до конца).

Вывод: тема - боян, у автора - гуглобан.
17. pentanom 25 14.02.19 10:54 Сейчас в теме
(16)
Вывод: тема - боян, у автора - гуглобан.
Ярлыки вешаете, тУваровЭд !
Только задача-то не найти счет, а записать его в нужное место в бухгалтерской справке.
18. ishelper 14.02.19 11:00 Сейчас в теме
(17) Сообщение 29 по ссылке из (16) - не?
19. pentanom 25 14.02.19 13:41 Сейчас в теме
(18)
Сообщение 29 по ссылке из (16) - не?

Там поиск счета, а у меня счет найден, но не подставляется в бухгалтерскую справку. Я же специально вывожу сообщение о наименовании счета, который нахожу по коду. Если бы это был НЕ счет, то наименование не определилось бы. По-моему, так.
Да и в операцию этот счет прерасно подставляется. Вероятно, в бухгалтерскую справку его нужно записывать как-то по-другому.

А по этой ссылке
дСчФак.Счет = БазаОле.СчетПоКоду("90.3",Бухгалтерия.ОсновнойПланСчетов());

не понятно что есть "БазаОле", а что - "Бухгалтерия"
20. svv1979 01.12.23 09:40 Сейчас в теме
Счет = БазаОле.СчетПоКоду("90.3",БазаОле.ОсновнойПланСчетов());
Получаем счет и радуемся :)
21. user856012 14 01.12.23 09:59 Сейчас в теме
(20)
Получаем счет и радуемся :)
Ага, вот так:
Прикрепленные файлы:
15. acanta 14.02.19 01:18 Сейчас в теме
(13) Ок, если это стандарт для кода в типовых, будем писать так.
2. DenisCh 13.02.19 17:41 Сейчас в теме
Счет_77.НайтиПоКоду("70");
Тут второй параметр обязателен, какой - посмотри в СП, давно уже с 77 не работал. По-моему, типа База77.планСчетов.Основной.
3. pentanom 25 13.02.19 17:45 Сейчас в теме
(2)Счет-то находится. Я специально вывел сообщения:
    Счет_77.НайтиПоКоду("20");
    Счет20=Счет_77.ТекущийСчет();
    Сообщить(Счет20.Код);
    Сообщить(Счет20.Наименование);
Наименование выводится правильно. Из этого я сделал вывод, что "Счет20" - нужный счет из используемого планы счетов.
10. ishelper 13.02.19 18:40 Сейчас в теме
Ну, что тут скажешь? Пожалуй, только то, что надо было сказать (причем, не мне) с самого начала: в типовой УСН 1.3 нет документа "Бухгалтерская справка".

Соответственно, как вы там его создали и чего при этом наворотили - ХЗ.
11. pentanom 25 13.02.19 19:02 Сейчас в теме
(10)Взял из ОСНО и до сегодня нормально работал. Я даже и забыл, что сам вставил ее в УСН. Просто не нужно было формировать справку из ЗУП.
Но и в загрузке в ОСНО тот же результат :(
22. CheBurator 3125 02.12.23 20:53 Сейчас в теме
Док_77.СчетДт = Счет20.ТекущийСчет();
- обращение текйщийсчет() здесь лишнее. и без него нормально ссылка будет
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот