Первое. Код 26 в книгу попадает как 22, вручную поменять можно, но толку мало. Заполнение ручного ввода тоже не доделали. Дата должна быть пустая, а не дает бланк оставить без даты.
Поставьте 26 код в счете-фактуре, посмотрите в книгу покупок - код становится 22. Если делать обычным способом через бланк счета-фактуры, в книгу покупок попадает правильно, дата уходит, поле пустое. Но если через ручной ввод делать, тогда невозможно сделать пустую дату.
1. Код 26 выбран и в Книге продаж ставится корректно.
2. Какая дата должна быть ПУСТАЯ? Поясните...
3. И при обращении с проблемой указывайте версию программы и версию обновления.
Вы делаете через оприходование счета-фактуры. Я пишу про стандартный бланк выписки счета-фактуры. Выпишите авансовый счет-фактуру с кодом 26, сделайте зачет в отгрузочную и посмотрите в книгу покупок - код пишет 22! Графа 8, дата пустая должна быть, когда вводим через ручной ввод. Через стандартный бланк делает правильно - убирает дату.
Мы делаем, исходя из вашего первичного вопроса. Там указано попадание данных в Книгу покупок, а это, на первый взгляд, оприходование СФ, но Вы ничего про это не пишете, как и про авансовый СФ, оказывается.
Если такой "сумбур вместо музыки" в вопросах будет, то наши специалисты не рассматривают такое вопросы.
Всё надо точно описывать, что, где и как...
Наши пользователи, увы, "грешат" тем, что в первых вопросах не указывают всю информацию, и приходится "тянуть" эти вопросы...
SF_NDS15.IBL
## Правка 1 — код 26 не затирать (строки ~1295–1303)
Как найти: поиск по тексту `для возмещаемых авансов код операции должен быть 22` (встречается один раз).
**БЫЛО (заменить целиком от строки-комментария до SQL_ЗАПРОС(СП) включительно):**
```
//для возмещаемых авансов код операции должен быть 22
КодОп="22"
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("INSERT INTO ")
СП.ДОБАВИТЬ("'"+КнПокТемп+"'")
СП.ДОБАВИТЬ("(DI,NI,D_ISP,N_ISP,ID_POST,ID_POK,KODOP,ID_KOMIS,KOMM,NGR,PGR,SRT,TIP)")
СП.ДОБАВИТЬ("SELECT DA,NSF,DA_ISP,NA_ISP,"+?(ПродНашаОрг,"ID_POST","ID_POK")+",ID_POK,'"+КодОп+"',ID_KOMIS,KOMM,NGR,NGRA,SRT,TIP FROM")
СП.ДОБАВИТЬ("'"+ТемпТаб+"'")
SQL_ЗАПРОС(СП)
```
**СТАЛО:**
```
//для возмещаемых авансов код операции должен быть 22
// правка 03.07.2026: авансовые СФ с КВО 26 сохраняют код 26 в книге покупок
// (письмо ФНС от 20.09.2016 № СД-4-3/17657@), остальные - 22 как раньше
КодОп="22"
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("INSERT INTO ")
СП.ДОБАВИТЬ("'"+КнПокТемп+"'")
СП.ДОБАВИТЬ("(DI,NI,D_ISP,N_ISP,ID_POST,ID_POK,KODOP,ID_KOMIS,KOMM,NGR,PGR,SRT,TIP)")
СП.ДОБАВИТЬ("SELECT DA,NSF,DA_ISP,NA_ISP,"+?(ПродНашаОрг,"ID_POST","ID_POK")+",ID_POK,'"+КодОп+"',ID_KOMIS,KOMM,NGR,NGRA,SRT,TIP FROM")
СП.ДОБАВИТЬ("'"+ТемпТаб+"'")
СП.ДОБАВИТЬ("WHERE KODOP IS NULL OR KODOP<>'26'")
SQL_ЗАПРОС(СП)
// правка 03.07.2026: отдельная вставка для авансов с КВО 26 - код берём из исходной СФ
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("INSERT INTO ")
СП.ДОБАВИТЬ("'"+КнПокТемп+"'")
СП.ДОБАВИТЬ("(DI,NI,D_ISP,N_ISP,ID_POST,ID_POK,KODOP,ID_KOMIS,KOMM,NGR,PGR,SRT,TIP)")
СП.ДОБАВИТЬ("SELECT DA,NSF,DA_ISP,NA_ISP,"+?(ПродНашаОрг,"ID_POST","ID_POK")+",ID_POK,KODOP,ID_KOMIS,KOMM,NGR,NGRA,SRT,TIP FROM")
СП.ДОБАВИТЬ("'"+ТемпТаб+"'")
СП.ДОБАВИТЬ("WHERE KODOP='26'")
SQL_ЗАПРОС(СП)
```
Следом в файле идёт блок `INSERT INTO ... SF_NDS15_ФайлИтогКнПок` — его НЕ трогать.
---
## Правка 2 — графа 8 пустая у ручных записей зачёта (строки ~891–900)
Как найти: поиск по тексту `SET TIP = '3' WHERE NK IS NOT NULL` (в блоке «данные ручного ввода», рядом строка `СП.SF_NDS15_СформУслВыб("AND")`).
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("UPDATE ")
СП.ДОБАВИТЬ("'"+SF_NDS15_ФайлВыбРучВв+"'")
СП.ДОБАВИТЬ("SET TIP = '3' WHERE NK IS NOT NULL AND NK <> ''")
SQL_ЗАПРОС(СП)
```
// правка 03.07.2026: у ручных записей зачёта авансов (КВО 22/26) графа 8
// (дата принятия на учет, DOPR) в книге покупок не заполняется.
// Чистим ПОСЛЕ отбора по периоду: в самой записи KN_POK дата должна оставаться -
// по ней запись попадает в квартал. 01.01.1980 = пустая дата (типовой приём).
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("UPDATE ")
СП.ДОБАВИТЬ("'"+SF_NDS15_ФайлВыбРучВв+"'")
СП.ДОБАВИТЬ("SET DOPR=CAST('01.01.1980' AS DATE) WHERE KODOP='22' OR KODOP='26'")
SQL_ЗАПРОС(СП)
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("UPDATE ")
СП.ДОБАВИТЬ("'"+SF_NDS15_ФайлВыбРучВв+"'")
СП.ДОБАВИТЬ("SET TIP = '3' WHERE NK IS NOT NULL AND NK <> ''")
SQL_ЗАПРОС(СП)
Убедительная просьба в дальнейшем для фото с экрана использовать бесплатные и удобные программы:
LigtShot
GreenShot
Иначе ничего не ясно в Ваших фото.
И что это: "Первое"? А где второе и последующее?
Поставьте 26 код в счете-фактуре, посмотрите в книгу покупок - код становится 22. Если делать обычным способом через бланк счета-фактуры, в книгу покупок попадает правильно, дата уходит, поле пустое. Но если через ручной ввод делать, тогда невозможно сделать пустую дату.
1. Код 26 выбран и в Книге продаж ставится корректно.
2. Какая дата должна быть ПУСТАЯ? Поясните...
3. И при обращении с проблемой указывайте версию программы и версию обновления.
Последняя версия сетевая ОРН.
Вы делаете через оприходование счета-фактуры. Я пишу про стандартный бланк выписки счета-фактуры. Выпишите авансовый счет-фактуру с кодом 26, сделайте зачет в отгрузочную и посмотрите в книгу покупок - код пишет 22! Графа 8, дата пустая должна быть, когда вводим через ручной ввод. Через стандартный бланк делает правильно - убирает дату.
Мы делаем, исходя из вашего первичного вопроса. Там указано попадание данных в Книгу покупок, а это, на первый взгляд, оприходование СФ, но Вы ничего про это не пишете, как и про авансовый СФ, оказывается.
Если такой "сумбур вместо музыки" в вопросах будет, то наши специалисты не рассматривают такое вопросы.
Всё надо точно описывать, что, где и как...
Наши пользователи, увы, "грешат" тем, что в первых вопросах не указывают всю информацию, и приходится "тянуть" эти вопросы...
Исправление кода 22 на 26 в вашем случае будет внесено в программу.
В ручном вводе для 8 графы ставьте дату 01.01.1980, пробуйте.
В ручном вводе пробовали - исчезает из периода вообще запись из книги.
Устал ждать - сделал сам:
SF_NDS15.IBL
## Правка 1 — код 26 не затирать (строки ~1295–1303)
Как найти: поиск по тексту `для возмещаемых авансов код операции должен быть 22` (встречается один раз).
**БЫЛО (заменить целиком от строки-комментария до SQL_ЗАПРОС(СП) включительно):**
```
//для возмещаемых авансов код операции должен быть 22
КодОп="22"
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("INSERT INTO ")
СП.ДОБАВИТЬ("'"+КнПокТемп+"'")
СП.ДОБАВИТЬ("(DI,NI,D_ISP,N_ISP,ID_POST,ID_POK,KODOP,ID_KOMIS,KOMM,NGR,PGR,SRT,TIP)")
СП.ДОБАВИТЬ("SELECT DA,NSF,DA_ISP,NA_ISP,"+?(ПродНашаОрг,"ID_POST","ID_POK")+",ID_POK,'"+КодОп+"',ID_KOMIS,KOMM,NGR,NGRA,SRT,TIP FROM")
СП.ДОБАВИТЬ("'"+ТемпТаб+"'")
SQL_ЗАПРОС(СП)
```
**СТАЛО:**
```
//для возмещаемых авансов код операции должен быть 22
// правка 03.07.2026: авансовые СФ с КВО 26 сохраняют код 26 в книге покупок
// (письмо ФНС от 20.09.2016 № СД-4-3/17657@), остальные - 22 как раньше
КодОп="22"
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("INSERT INTO ")
СП.ДОБАВИТЬ("'"+КнПокТемп+"'")
СП.ДОБАВИТЬ("(DI,NI,D_ISP,N_ISP,ID_POST,ID_POK,KODOP,ID_KOMIS,KOMM,NGR,PGR,SRT,TIP)")
СП.ДОБАВИТЬ("SELECT DA,NSF,DA_ISP,NA_ISP,"+?(ПродНашаОрг,"ID_POST","ID_POK")+",ID_POK,'"+КодОп+"',ID_KOMIS,KOMM,NGR,NGRA,SRT,TIP FROM")
СП.ДОБАВИТЬ("'"+ТемпТаб+"'")
СП.ДОБАВИТЬ("WHERE KODOP IS NULL OR KODOP<>'26'")
SQL_ЗАПРОС(СП)
// правка 03.07.2026: отдельная вставка для авансов с КВО 26 - код берём из исходной СФ
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("INSERT INTO ")
СП.ДОБАВИТЬ("'"+КнПокТемп+"'")
СП.ДОБАВИТЬ("(DI,NI,D_ISP,N_ISP,ID_POST,ID_POK,KODOP,ID_KOMIS,KOMM,NGR,PGR,SRT,TIP)")
СП.ДОБАВИТЬ("SELECT DA,NSF,DA_ISP,NA_ISP,"+?(ПродНашаОрг,"ID_POST","ID_POK")+",ID_POK,KODOP,ID_KOMIS,KOMM,NGR,NGRA,SRT,TIP FROM")
СП.ДОБАВИТЬ("'"+ТемпТаб+"'")
СП.ДОБАВИТЬ("WHERE KODOP='26'")
SQL_ЗАПРОС(СП)
```
Следом в файле идёт блок `INSERT INTO ... SF_NDS15_ФайлИтогКнПок` — его НЕ трогать.
---
## Правка 2 — графа 8 пустая у ручных записей зачёта (строки ~891–900)
Как найти: поиск по тексту `SET TIP = '3' WHERE NK IS NOT NULL` (в блоке «данные ручного ввода», рядом строка `СП.SF_NDS15_СформУслВыб("AND")`).
**БЫЛО (заменить целиком):**
```
СП.SF_NDS15_СформУслВыб("AND")
т=SQL_ЗАПРОС(СП)
т.ЗАПИСАТЬ(SF_NDS15_ФайлВыбРучВв)
т.ЗАКРЫТЬ
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("UPDATE ")
СП.ДОБАВИТЬ("'"+SF_NDS15_ФайлВыбРучВв+"'")
СП.ДОБАВИТЬ("SET TIP = '3' WHERE NK IS NOT NULL AND NK <> ''")
SQL_ЗАПРОС(СП)
```
**СТАЛО:**
```
СП.SF_NDS15_СформУслВыб("AND")
т=SQL_ЗАПРОС(СП)
т.ЗАПИСАТЬ(SF_NDS15_ФайлВыбРучВв)
т.ЗАКРЫТЬ
// правка 03.07.2026: у ручных записей зачёта авансов (КВО 22/26) графа 8
// (дата принятия на учет, DOPR) в книге покупок не заполняется.
// Чистим ПОСЛЕ отбора по периоду: в самой записи KN_POK дата должна оставаться -
// по ней запись попадает в квартал. 01.01.1980 = пустая дата (типовой приём).
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("UPDATE ")
СП.ДОБАВИТЬ("'"+SF_NDS15_ФайлВыбРучВв+"'")
СП.ДОБАВИТЬ("SET DOPR=CAST('01.01.1980' AS DATE) WHERE KODOP='22' OR KODOP='26'")
SQL_ЗАПРОС(СП)
СП.ОЧИСТИТЬ
СП.ДОБАВИТЬ("UPDATE ")
СП.ДОБАВИТЬ("'"+SF_NDS15_ФайлВыбРучВв+"'")
СП.ДОБАВИТЬ("SET TIP = '3' WHERE NK IS NOT NULL AND NK <> ''")
SQL_ЗАПРОС(СП)