Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 08:51
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Печать счета на оплату - Предприниматель вместо Руководителя и Бухгалтера  (Прочитано 2440 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Doomych

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-11-13
  • Сайт: 
1С:Предприятие 8.3 (типовая конфигурация; Бухгалтерия предприятия, редакция 3.0)
Работаю 1С из Delphi через OLE Automation.

Создаю документ "Счет на оплату покупателю". Все ОК, но при печати счета (уже из самой 1С) внизу подпись - "Предприниматель", а должно быть "Руководитель" и "Бухгалтер". Если же я в самой 1С, в "Счете на оплату покупателю", перевыберу организацию, то подписи при печати станут правильными. Вот мой код (слегка упрощен):
// Создание в 1С документа "Счет на оплату покупателю"
function TActs.CreateInvoiceForPayment(AContractor: OleVariant;
  out AInvoiceForPayment: OleVariant; ANomenklatura: OleVariant; APrice: Currency;
  AActDate: TDateTime): boolean;
var
  invoiceForPayment: OleVariant;
  services: OleVariant;
  additional: OleVariant;
  properties: OleVariant;
const
  cQty = 1; // количество услуг
begin
  invoiceForPayment := Ole1C.Документы.СчетНаОплатуПокупателю.СоздатьДокумент();
  invoiceForPayment.Контрагент := AContractor.Ссылка;
  invoiceForPayment.ДоговорКонтрагента := AContractor.ОсновнойДоговорКонтрагента.Ссылка;
  invoiceForPayment.Дата := AActDate;
  invoiceForPayment.Организация := FHostCompany.Ссылка;
  invoiceForPayment.ВалютаДокумента := FCurrencyRouble;
  invoiceForPayment.СтруктурнаяЕдиница := AContractor.ОсновнойБанковскийСчет.Ссылка; // банковский счет
  if FUseVat then
    invoiceForPayment.СуммаВключаетНДС := FUseVat;
  invoiceForPayment.СтатусОплаты := Ole1C.Перечисления.СтатусОплатыСчетаПокупателю.НеОплачен;

  // Заполняем табличную часть "Дополнительно"
  Ole1C.ОтветственныеЛицаБП.УстановитьОтветственныхЛиц(invoiceForPayment); // а/м заполнение директора и бухгалтера
  invoiceForPayment.Ответственный := Ole1C.ПараметрыСеанса.ТекущийПользователь;

  // Заполняем табличную часть "Услуги"
  services := invoiceForPayment.Услуги;
  properties := services.Добавить();
  properties.Номенклатура := ANomenklatura.Ссылка;
  properties.Содержание := ANomenklatura.Наименование;
  properties.Количество := cQty;
  properties.Цена := APrice;
  properties.Сумма := APrice * cQty;
  if FUseVat then
  begin
    properties.СтавкаНДС := Ole1C.Перечисления.СтавкиНДС.НДС18;
    properties.СуммаНДС := properties.Сумма - properties.Сумма * 100 / (100 + FVat);
  end
  else
  begin
    properties.СтавкаНДС := Ole1C.Перечисления.СтавкиНДС.БезНДС;
  end;

  invoiceForPayment.Записать(Ole1C.РежимЗаписиДокумента.Проведение);

  AInvoiceForPayment := invoiceForPayment;
end;
Что не так?


Оффлайн Doomych

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-11-13
  • Сайт: 
Разобрался. Надо было заполнить реквизит "ОрганизацияПолучатель":
invoiceForPayment.ОрганизацияПолучатель := invoiceForPayment.Организация;


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
56 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
27 Сообщений
Golickoff Golickoff
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 577
  • Точка Скрытых: 0
  • Точка Пользователей: 8
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal