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

Автор Тема: Сравнить два разных документа (табеля)  (Прочитано 680 раз)

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

Оффлайн Dimonmsk

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-27
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день,
я новичек в деле программирования, но задача такова.
Я ежедневно заполняю табель раб.времени (свой формат, табель подразделения), раз в неделю получаю в Excel файле от ЦО офиса их табель (их формат, тебель офиса) и загружаю в 1С по идее данные фио, отработанные часы, смены и по дням должны у нас совпадать, но по халатности или лени одной из сторон, данные не вносяться и в итоге разнятся. И это очень осложняет рабочий процесс.
Может кто подскажет как сравнить эти два документа? сверять ручную по-фамильно, по-дням и часам очень сложно т.к. в день до 50 фио может быть... постоянно ошибаюсь.
Может в данные регистров сверять? или вывести их в отдельный документ???
Есть два регистра - 1й Учет смен (мой табель), 2й ТебельОфиса.

скрины прикладываю.

Заранее огромное спасибо!


Платформа не типовая
1С:Предприятие 8.3 (8.3.7.1776)


Оффлайн HumanVIL

  • *
  • Сообщений: 8
  • РЕПУТАЦИЯ: 3
  • КПД: 38%
  • Регистрация: 2016-01-07
  • Сайт: 
  • Профессия: Программист 8.1
Может кто подскажет как сравнить эти два документа? сверять ручную по-фамильно, по-дням и часам очень сложно т.к. в день до 50 фио может быть... постоянно ошибаюсь.
Может в данные регистров сверять? или вывести их в отдельный документ???
Есть два регистра - 1й Учет смен (мой табель), 2й ТебельОфиса.

Ну в общем-то, при наличии регистров в большинстве случаев надо работать именно с ними.
И если их структура в целом похожа и в принципе подходит для сравнения - то вопросов особенных нет.

Оффлайн Dimonmsk

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-27
  • Сайт: 
  • Профессия: Ученик 1С
спасибо за ответ.

но как их сравнить ? если особенных вопросов нет...


Может кто подскажет как сравнить эти два документа? сверять ручную по-фамильно, по-дням и часам очень сложно т.к. в день до 50 фио может быть... постоянно ошибаюсь.
Может в данные регистров сверять? или вывести их в отдельный документ???
Есть два регистра - 1й Учет смен (мой табель), 2й ТебельОфиса.

Ну в общем-то, при наличии регистров в большинстве случаев надо работать именно с ними.
И если их структура в целом похожа и в принципе подходит для сравнения - то вопросов особенных нет.

Оффлайн HumanVIL

  • *
  • Сообщений: 8
  • РЕПУТАЦИЯ: 3
  • КПД: 38%
  • Регистрация: 2016-01-07
  • Сайт: 
  • Профессия: Программист 8.1

но как их сравнить ? если особенных вопросов нет...


Запрос сделать к регистрам. И проанализировать результат.
У ваших регистров, по идее, обязана быть ссылка на документ регистратор. То есть табель. В регистрах у вас вероятно есть измерения: Магазин, Сотрудник. От всего этого можно плясать...

Оффлайн Dimonmsk

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-27
  • Сайт: 
  • Профессия: Ученик 1С
Спасибо!

Да все это есть. Знать бы еще где этот запрос делать и как.
Буду мучиться и дальше, по старинке (





но как их сравнить ? если особенных вопросов нет...


Запрос сделать к регистрам. И проанализировать результат.
У ваших регистров, по идее, обязана быть ссылка на документ регистратор. То есть табель. В регистрах у вас вероятно есть измерения: Магазин, Сотрудник. От всего этого можно плясать...

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1096
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
а позвать спеца по 1С не судьба?
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн HumanVIL

  • *
  • Сообщений: 8
  • РЕПУТАЦИЯ: 3
  • КПД: 38%
  • Регистрация: 2016-01-07
  • Сайт: 
  • Профессия: Программист 8.1
Спасибо!

Да все это есть. Знать бы еще где этот запрос делать и как.
Буду мучиться и дальше, по старинке (


Ну как где...) Делаете обработку. Добавляете пару реквизитов - МойТабель и ТабельОфиса. Их передаете в параметры запроса.
По старинке мучиться не обязательно.) Есть как минимум конструктор запроса, причем с обработкой результата. Правой кнопкой мыши в тексте модуля щелкните, увидите. Он почти работает за вас. Также в открытом доступе есть консоли запросов и консоли системы компоновки данных. Запускаются прямо в пользовательском режиме 1С и очень просветляют.

В принципе, вот результат. Рыба, примерно с вашими данными, показывает разницу в итоговом значении смен, в зависимости от магазина. Естественно, доработать можно как угодно, с отображением номеров строк документов  и т.д. Но это уже творческая работа.)


&НаСервере
Процедура ВыполнитьПроверкуНаСервере(МойТабель, ТабельОфиса)

Запрос = Новый Запрос;

Запрос.Текст =
"ВЫБРАТЬ
| ВложенныйЗапрос.Магазин,
| ВложенныйЗапрос.Сотрудник,
| ЕСТЬNULL(ТабельОфиса.Смены, 0) - ЕСТЬNULL(УчетСмен.Смены, 0) КАК Разница
|ИЗ
| (ВЫБРАТЬ
| УчетСмен.Магазин КАК Магазин,
| УчетСмен.Сотрудник КАК Сотрудник
| ИЗ
| РегистрНакопления.УчетСмен КАК УчетСмен
| ГДЕ
| УчетСмен.Регистратор = &МойТабель
|
| ОБЪЕДИНИТЬ
|
| ВЫБРАТЬ
| ТабельОфиса.Магазин,
| ТабельОфиса.Сотрудник
| ИЗ
| РегистрНакопления.ТабельОфиса КАК ТабельОфиса
| ГДЕ
| ТабельОфиса.Регистратор = &ТабельОфиса) КАК ВложенныйЗапрос
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.УчетСмен КАК УчетСмен
| ПО ВложенныйЗапрос.Магазин = УчетСмен.Магазин
| И ВложенныйЗапрос.Сотрудник = УчетСмен.Сотрудник
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТабельОфиса КАК ТабельОфиса
| ПО ВложенныйЗапрос.Магазин = ТабельОфиса.Магазин
| И ВложенныйЗапрос.Сотрудник = ТабельОфиса.Сотрудник
|ГДЕ
| ЕСТЬNULL(ТабельОфиса.Смены, 0) - ЕСТЬNULL(УчетСмен.Смены, 0) <> 0";

Запрос.УстановитьПараметр("МойТабель", МойТабель);
Запрос.УстановитьПараметр("ТабельОфиса", ТабельОфиса);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

Сообщить("" + ВыборкаДетальныеЗаписи.Магазин + ", " + ВыборкаДетальныеЗаписи.Сотрудник + ": " + ВыборкаДетальныеЗаписи.Разница);

КонецЦикла;


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

&НаКлиенте
Процедура ВыполнитьПроверку(Команда)

ВыполнитьПроверкуНаСервере(Объект.МойТабель, Объект.ТабельОфиса);

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

Оффлайн Dimonmsk

  • *
  • Сообщений: 23
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-27
  • Сайт: 
  • Профессия: Ученик 1С
Спасибо!

ВСЕ ОТЛИЧНО!


Спасибо!

Да все это есть. Знать бы еще где этот запрос делать и как.
Буду мучиться и дальше, по старинке (


Ну как где...) Делаете обработку. Добавляете пару реквизитов - МойТабель и ТабельОфиса. Их передаете в параметры запроса.
По старинке мучиться не обязательно.) Есть как минимум конструктор запроса, причем с обработкой результата. Правой кнопкой мыши в тексте модуля щелкните, увидите. Он почти работает за вас. Также в открытом доступе есть консоли запросов и консоли системы компоновки данных. Запускаются прямо в пользовательском режиме 1С и очень просветляют.

В принципе, вот результат. Рыба, примерно с вашими данными, показывает разницу в итоговом значении смен, в зависимости от магазина. Естественно, доработать можно как угодно, с отображением номеров строк документов  и т.д. Но это уже творческая работа.)


&НаСервере
Процедура ВыполнитьПроверкуНаСервере(МойТабель, ТабельОфиса)

Запрос = Новый Запрос;

Запрос.Текст =
"ВЫБРАТЬ
| ВложенныйЗапрос.Магазин,
| ВложенныйЗапрос.Сотрудник,
| ЕСТЬNULL(ТабельОфиса.Смены, 0) - ЕСТЬNULL(УчетСмен.Смены, 0) КАК Разница
|ИЗ
| (ВЫБРАТЬ
| УчетСмен.Магазин КАК Магазин,
| УчетСмен.Сотрудник КАК Сотрудник
| ИЗ
| РегистрНакопления.УчетСмен КАК УчетСмен
| ГДЕ
| УчетСмен.Регистратор = &МойТабель
|
| ОБЪЕДИНИТЬ
|
| ВЫБРАТЬ
| ТабельОфиса.Магазин,
| ТабельОфиса.Сотрудник
| ИЗ
| РегистрНакопления.ТабельОфиса КАК ТабельОфиса
| ГДЕ
| ТабельОфиса.Регистратор = &ТабельОфиса) КАК ВложенныйЗапрос
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.УчетСмен КАК УчетСмен
| ПО ВложенныйЗапрос.Магазин = УчетСмен.Магазин
| И ВложенныйЗапрос.Сотрудник = УчетСмен.Сотрудник
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТабельОфиса КАК ТабельОфиса
| ПО ВложенныйЗапрос.Магазин = ТабельОфиса.Магазин
| И ВложенныйЗапрос.Сотрудник = ТабельОфиса.Сотрудник
|ГДЕ
| ЕСТЬNULL(ТабельОфиса.Смены, 0) - ЕСТЬNULL(УчетСмен.Смены, 0) <> 0";

Запрос.УстановитьПараметр("МойТабель", МойТабель);
Запрос.УстановитьПараметр("ТабельОфиса", ТабельОфиса);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

Сообщить("" + ВыборкаДетальныеЗаписи.Магазин + ", " + ВыборкаДетальныеЗаписи.Сотрудник + ": " + ВыборкаДетальныеЗаписи.Разница);

КонецЦикла;


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

&НаКлиенте
Процедура ВыполнитьПроверку(Команда)

ВыполнитьПроверкуНаСервере(Объект.МойТабель, Объект.ТабельОфиса);

КонецПроцедуры
Добавлено: 08 Янв 2016, 17:57

Кроме меня, это не кому не нужно.
Так что, нет, не судьба!)

а позвать спеца по 1С не судьба?


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 3883
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 13713
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 3344
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 6781
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984
"Не совпадают сумма документа и общая сумма по платежным ведомостям"

Автор yunovoРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 3804
Последний ответ 11 Янв 2015, 02:55
от MuI_I_Ika

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
alex0402
127 Сообщений
MuI_I_Ika MuI_I_Ika
57 Сообщений
Norfolk
52 Сообщений
LexaK
49 Сообщений
друган
20 Сообщений
alexandr_ll
20 Сообщений
Константин5825
18 Сообщений
AsadRoman
18 Сообщений
MrLvovsky MrLvovsky
16 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal