powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / как переложить на t-sql запрос 1с
17 сообщений из 17, страница 1 из 1
как переложить на t-sql запрос 1с
    #40001259
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребят, добрый всем день!

Как можно переложить на sql этот запрос?

ВЫБРАТЬ РАЗРЕШЕННЫЕ
ПоложенныеВидыЕжегодныхОтпусковСрезПоследних.Сотрудник КАК Сотрудник,
ПоложенныеВидыЕжегодныхОтпусковСрезПоследних.ВидЕжегодногоОтпуска КАК ВидЕжегодногоОтпуска,
ПоложенныеВидыЕжегодныхОтпусковСрезПоследних.КоличествоДнейВГод КАК ДнейЕжегодно
ПОМЕСТИТЬ ВТТекущиеПраваНаОтпуска
ИЗ
РегистрСведений.ПоложенныеВидыЕжегодныхОтпусков.СрезПоследних(
&ДатаОтчета,
(Сотрудник, ВидЕжегодногоОтпуска) В
(ВЫБРАТЬ
ВТУказателиПоследних.Сотрудник,
ВТУказателиПоследних.ВидЕжегодногоОтпуска
ИЗ
ВТУказателиПоследних КАК ВТУказателиПоследних)) КАК ПоложенныеВидыЕжегодныхОтпусковСрезПоследних

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001267
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в консоли запросов подобный "сервис" есть
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001271
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МодальноеОкно,

у меня нет доступа к консоли, т.к. я не являюсь разработчиком 1С.(

Вас не затруднит кинуть в меня результатом)?!
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001282
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
direget
МодальноеОкно,

у меня нет доступа к консоли, т.к. я не являюсь разработчиком 1С.(

Вас не затруднит кинуть в меня результатом)?!


а результат вы какой ожидаете?

для того чтобы запрос заработал в конфигурации на которой он будет выполняться должны быть такие же метаданные. я не знаю откуда ваш запрос. из упп? из зупа? из бухгалтерии? ерп?
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001283
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МодальноеОкно,
Прошу прощения, молодой еще...

ЗУП 8.3

Результат в виде запроса только на sql
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001284
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
direget
МодальноеОкно,
Прошу прощения, молодой еще...

ЗУП 8.3

Результат в виде запроса только на sql


На самом деле больше всего смущает срезпоследних...не сталкивался еще с такой штуковиной.

Метаданные должны быть похожи, т.к. это стандартная таблица ЗУПа.
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001288
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
direget
больше всего смущает срезпоследних


ничего сверхгигантского. это "виртуальная" таблица, которая строится на базе физической - по сути значения из таблицы (РегистрСведений.ПоложенныеВидыЕжегодныхОтпусков) на некую дату &ДатаОтчета с отбором по полям
(Сотрудник, ВидЕжегодногоОтпуска) из подзапроса В
(ВЫБРАТЬ
ВТУказателиПоследних.Сотрудник,
ВТУказателиПоследних.ВидЕжегодногоОтпуска
ИЗ
ВТУказателиПоследних КАК ВТУказателиПоследних)
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001291
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
РАЗРЕШЕННЫЕ указывает что на запрос должен накладываться подходящий шаблон RLS который будет вычленять только те записи которые пользователь от имени которого выполняется запрос должен видеть в соответствии со своим профилем (набор прав + органичения доступа по некому разрезу(ам) - обычно по организациям)

это все пока можно оставить за скобками чтобы "не утонуть"
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001294
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МодальноеОкно,

как я понял, подставляю параметр даты(на которую формируется отчет) в подзапрос и все?
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001296
angro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
там ещё от базы к базе могут имена таблиц меняться
в одной и той же конфигурации

можно выполнить его в 1с, а в профайлере отловить
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001299
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати

ВЫБРАТЬ
ВТУказателиПоследних.Сотрудник,
ВТУказателиПоследних.ВидЕжегодногоОтпуска
ИЗ
ВТУказателиПоследних КАК ВТУказателиПоследних

говорит о том что текст запроса не весь

или результат запрос получается за несколько шагов. с передачей от одного шага к другому менеджервременныхтаблиц
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001300
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МодальноеОкно,

результат запроса с передачей от одного шага к другому.

а как это интерпретировать в sql?

"РегистрСведений.ПоложенныеВидыЕжегодныхОтпусков.СрезПоследних(
&ДатаОтчета,
(Сотрудник, ВидЕжегодногоОтпуска) В..."
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001301
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
direget
МодальноеОкно,

как я понял, подставляю параметр даты(на которую формируется отчет) в подзапрос и все?



ну почти. &ДатаОтчета - это параметр, а подзапрос у вас формирует параметры "отбора". и то и другое по сути параметры. вы управляете непосредственно параметром с датой, параметры отбора полей у вас формируются на базе временной таблице где-то "выше" по запросу/стеку вызовов
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001305
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
direget
результат запроса с передачей от одного шага к другому. а как это интерпретировать в sql?


набор скриптов которые порождают временные таблицы типа "select into #t1", "select into #t2". потом в конце какой-то мегазапрос собирает их как источники данных и чего-то лепит из них на выходе для пользователя

1с ограничена в возможностях sql - приходится извращаться
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001308
МодальноеОкно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ваш запрос не выполняется, т.к. я в душе не ведаю как наполняется эта временная таблица:

ВЫБРАТЬ
ВТУказателиПоследних.Сотрудник,
ВТУказателиПоследних.ВидЕжегодногоОтпуска
ИЗ
ВТУказателиПоследних КАК ВТУказателиПоследних

это только выборка из нее. было еще и:

ВЫБРАТЬ
.....
ПОМЕСТИТЬ ВТУказателиПоследних
из "неведомая фигня"
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001310
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МодальноеОкно,

Declare @ReportDate date
Declare @Sotr binary(16)

set @ReportDate='4019-12-27 00:00:00' --ДатаОтчета
set @Sotr='' --Сотрудник
---Шаг1---
if object_id('tempdb..#ЕжегодныеОтпуска') is not null
drop table #ЕжегодныеОтпуска

select _IDRRef as ВидЕжегодногоОтпуска

into #ЕжегодныеОтпуска
from _Reference**
where _Fld*****=1

/*Проверка записанных значений*/
select * from #ЕжегодныеОтпуска

---Шаг2---
if object_id('tempdb..#ЗаработанныеПрава') is not null
drop table #ЗаработанныеПрава

select
_fld*****RRef as Сотрудник,
_fld*****RRef as ВидЕжегодногоОтпуска,
_fld***** as ДатаНачала,
_Fld***** as ДатаОкончания,
_Period as Период,
_fld***** as КоличествоДней,
_fld***** as КоличествоДнейЗаПериод

into #ЗаработанныеПрава
from _InfoRg***** a
join #ЕжегодныеОтпуска as ЕжегодныеОтпуска on a._Fld*****RRef=ЕжегодныеОтпуска.ВидЕжегодногоОтпуска
where a._Period<=@ReportDate and a._Fld*****RRef=@Sotr

/*Проверка записанных значений*/
select * from #ЗаработанныеПрава

---Шаг3---
if object_id('tempdb..#УказателиПоследних') is not null
drop table #УказателиПоследних

Select Сотрудник,
ВидЕжегодногоОтпуска,
MAX(Период) as Период

into #УказателиПоследних
from #ЗаработанныеПрава
group by Сотрудник, ВидЕжегодногоОтпуска

/*Проверка записанных значений*/
select * from #УказателиПоследних

---Шаг4---
if object_id('tempdb..#ТекущиеПраваНаОтпуска') is not null
drop table #ТекущиеПраваНаОтпуска

(select _Fld*****RRef as Сотрудник,
_Fld*****RRef as ВидЕжегодногоОтпуска,
_Fld***** as ДнейЕжегодно

into #ТекущиеПраваНаОтпуска
from _InfoRg*****
where Period=@ReportDate)
in
(select Сотрудник,
ВидЕжегодногоОтпуска
from #УказателиПоследних)) as ПоложенныеВидыЕжегодныхО
...
Рейтинг: 0 / 0
как переложить на t-sql запрос 1с
    #40001338
direget
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, разобрался с вашей помощью! Модальное окно - красавчег!

select _Fld*****RRef as Сотрудник,
_Fld*****RRef as ВидЕжегодногоОтпуска,
_Fld***** as ДнейЕжегодно
into #ТекущиеПраваНаОтпуска
from _InfoRg*****
where _Period=@ReportDate
and _Fld*****RRef
in (select Сотрудник
from #УказателиПоследних)
and _Fld*****RRef
in (select Сотрудник
from #УказателиПоследних)
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / как переложить на t-sql запрос 1с
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]