|   |   | 
| 
 | v7: 1С++ запрос | ☑ | ||
|---|---|---|---|---|
| 0
    
        bananan 08.01.13✎ 12:47 | 
        Добрый день! Нужна помощь в переделке запроса.
  Запрос Такой: ТекстЗапроса = " |SELECT | Клиент [Клиент $Справочник.Клиенты] |,Агент [Агент $Справочник.Агент] |,Заказ [Заказ $Документ] |,НачОст |,Приход |,Расход |,КонОст |,ПрошлоДней |,Долг |,Переплата |,Отсрочка |,CASE WHEN ПрошлоДней > Отсрочка THEN ROUND((ПрошлоДней-Отсрочка) * (:процент) * Долг / 100,2) ELSE 0 END as Пеня | |FROM |( |SELECT | | * |,CASE WHEN КонОст<0 THEN КонОст ELSE 0 END Долг |,CASE WHEN КонОст>0 THEN КонОст ELSE 0 END Переплата |,CASE WHEN $ПоследнееЗначение.Клиенты.СрокКредита(Клиент, :ТекДата) = 0 | THEN :Дней | ELSE $ПоследнееЗначение.Клиенты.СрокКредита(Клиент, :ТекДата) END Отсрочка | FROM |( |SELECT | Журнал.IDDOCDEF |, (DATEDIFF(day,LEFT(Журнал.DATE_TIME_IDDOC, 8),:Дата2)) AS ПрошлоДней |, CASE WHEN Журнал.IDDOCDEF = $ВидДокумента.РасходнаяНакладная"+?(ф2=1,"Н","")+" THEN $РН.Агент ELSE $Ост.Агент END Агент |, ВЗОст.Клиент Клиент |, ВЗОст.Заказ Заказ |, ВЗОст.СуммаОснНачальныйОстаток НачОст |, ВЗОст.СуммаОснПриход Приход |, ВЗОст.СуммаОснРасход Расход |, ВЗОст.СуммаОснКонечныйОстаток as КонОст | FROM $РегистрОстаткиОбороты.Взаиморасчеты"+?(ф2=1,"Нал","")+"(:Дата1,:Дата2~,,Движения,,,(Клиент, Заказ),СуммаОсн) AS ВЗОст | LEFT JOIN _1SJOURN AS Журнал ON Журнал.IDDOC = RIGHT(ВЗОст.Заказ,9) | LEFT JOIN $Документ.РасходнаяНакладная"+?(ф2=1,"Н","")+" AS РН ON Журнал.IDDOC = РН.IDDOC | LEFT JOIN $Документ.Остатки"+?(ф2=1,"Нал","Взаиморасчетов")+" AS Ост ON Ост.IDDOC = Журнал.IDDOC | WHERE Журнал.IDDOCDEF IN ($ВидДокумента.РасходнаяНакладная"+?(ф2=1,"Н","")+",$ВидДокумента.Остатки"+?(ф2=1,"Нал","Взаиморасчетов")+") |) T1 |) T2 | LEFT JOIN $Справочник.Клиенты AS Клиенты ON RIGHT(Клиент,9) = Клиенты.ID | Так вот в переработаном запросе надо добавить поле В том числе и в это поле скидать данные по таких документах: 1. ПерезачетБартер 2. ВозвратнаяНакладная 3. ПерезачетБартерНал 4. ВозвратнаяНакладнаяН Насколько я понимаю - тут ничего сложного вроде и нет, но, уже с час смотрю на эту задачу, как баран на новые ворота. Где и как вставить условие по данным документа? Честно, говоря, - ничего не понимаю. :( | |||
| 49
    
        Patrio_ O_Muerte 08.01.13✎ 16:29 | 
        (8)Совсем с ума сошел, тут ведь праздники были! Когда б он занимался делом?     | |||
| 50
    
        viktor_vv 08.01.13✎ 16:29 | 
        (48)* подставляет реальные имена таблиц и полей.     | |||
| 51
    
        bananan 08.01.13✎ 16:29 | 
        (48) Документ называется ВыплатаЗП
  Идентификатор: ВыплатаЗП Синоним: ВыплатаЗП Комментарий: Выплата заработной платы | |||
| 52
    
        viktor_vv 08.01.13✎ 16:30 | 
        (48)* праздники сказываются :), русским по белому.     | |||
| 53
    
        viktor_vv 08.01.13✎ 16:30 | 
        (51) Теперь раскрываем ветку ТабличнаяЧасть и что там ?     | |||
| 54
    
        bananan 08.01.13✎ 16:31 | 
        (53) Сотр     | |||
| 55
    
        viktor_vv 08.01.13✎ 16:33 | 
        (54) Это у тебя что-то очень древнее.
  |SELECT | $ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники] | FROM $ДокументСтроки.ВыплатаЗП as ДокЗП (nolock)"; | |||
| 56
    
        bananan 08.01.13✎ 16:33 | 
        Ясно, теперь понял в чем фигоня. А по поводу парсера... Откуда мили как ... ну не знаю как точно сформулировать..
  Откуда ты взял $ДокЗП? | |||
| 57
    
        viktor_vv 08.01.13✎ 16:35 | 
        (56) Строчка 
  FROM $ДокументСтроки.ВыплатаЗП as ДокЗП (nolock)"; ничего не навевает ? | |||
| 58
    
        bananan 08.01.13✎ 16:35 | 
        (57) Пардон; туплю     | |||
| 59
    
        viktor_vv 08.01.13✎ 16:36 | 
        И таки лучше, хотя бы по диагонали, документацию почитать.     | |||
| 60
    
        bananan 08.01.13✎ 16:37 | 
        А теперь нужно делать подзапрос - чтобы выбрать данные о Сотр из таблицной части документа - из справочника Сотрудники?     | |||
| 61
    
        bananan 08.01.13✎ 16:38 | 
        Через inner join?     | |||
| 62
    
        viktor_vv 08.01.13✎ 16:39 | 
        (60) Левое соединение со справочником Сотрудники по реквизиту Сотр и ID справочника.     | |||
| 63
    
        viktor_vv 08.01.13✎ 16:39 | 
        (62)+ Реквизиту Сотр табличной части дока.     | |||
| 64
    
        bananan 08.01.13✎ 16:39 | 
        (62) Спасибо, попробую     | |||
| 65
    
        Mikeware 08.01.13✎ 16:57 | 
        (62) Зачем левое, если у него сотрудник точно есть?     | |||
| 66
    
        bananan 08.01.13✎ 17:05 | 
        Я пока еще не очень в SQL-е, короче написла таой текст запроса:
  ТекстЗапроса = " |SELECT | $ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники] | JOIN ( | SELECT | $ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники] | FROM $Справочник.Сотрудники | | FROM $ДокументСтроки.ВыплатаЗП as ДокЗП (nolock)"; Выдает ошибку:Server]Incorrect syntax near the keyword 'JOIN' | |||
| 67
    
        Mikeware 08.01.13✎ 17:07 | 
        (66) абсолютно верно выдает.     | |||
| 68
    
        Mikeware 08.01.13✎ 17:08 | 
        +(67) я б за такое еще б и в морду дал на его месте...     | |||
| 69
    
        viktor_vv 08.01.13✎ 17:10 | 
        (65) Ну это да.
  Привык inner как фильтр использовать в основном. | |||
| 70
    
        bananan 08.01.13✎ 17:10 | 
        (67-69) А как написать?     | |||
| 71
    
        Mikeware 08.01.13✎ 17:14 | 
        (70) как написано в учебниках по языку     | |||
| 72
    
        viktor_vv 08.01.13✎ 17:16 | 
        ТекстЗапроса = "
  |SELECT |$ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], |СпрСотр.ИдентификаторНеПереодическогоРеквизитаСправочника [Алиас $Типизация] |FROM | |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | inner JOIN $Справочник.Сотрудники as СпрСотр (nolock) | on $ДокЗП.Сотр = СпрСотр.ID |"; Извини, но больше я пас. Ты ж не читаешь нихрена. | |||
| 73
    
        viktor_vv 08.01.13✎ 17:17 | 
        (72)* 
  |$СпрСотр.ИдентификаторНеПереодическогоРеквизитаСправочника [Алиас $Типизация] | |||
| 74
    
        bananan 08.01.13✎ 17:17 | 
        (72) Да читаю... Спасибо и за то     | |||
| 75
    
        viktor_vv 08.01.13✎ 17:17 | 
        * Периодического.     | |||
| 76
    
        bananan 08.01.13✎ 17:18 | 
        (73) А какого именно реквизита?     | |||
| 77
    
        КонецЦикла 08.01.13✎ 17:19 | 
        (66) Скачай конструктор запросов by Berezdetsky     | |||
| 78
    
        bananan 08.01.13✎ 17:20 | 
        В справочнике Сотрудники - 14 Периодических реквизитов     | |||
| 79
    
        Mikeware 08.01.13✎ 17:23 | 
        (77) ну, конструктор тоже иногда ляпы дает. Плюс с виртуальными таблицами у него косячок - параметры не ставит, да и лишние соединения пихает.
  Лучше руками научиться... | |||
| 80
    
        bananan 08.01.13✎ 17:25 | 
        (77)(79) Так какой именно периодический реквизит справочника надо указать?     | |||
| 81
    
        viktor_vv 08.01.13✎ 17:26 | 
        (76) То есть ты у МЕНЯ спрашиваешь, какие данные ТЫ хочешь получить из справочника сотрудники ?
  Пожалуй у меня не настолько развита telepat.dll . | |||
| 82
    
        bananan 08.01.13✎ 17:26 | 
        (81) Понял     | |||
| 83
    
        Mikeware 08.01.13✎ 17:27 | 
        (81) не обновлял давно? :-)))     | |||
| 84
    
        КонецЦикла 08.01.13✎ 17:28 | 
        (79) 90% забот автора уберет     | |||
| 85
    
        viktor_vv 08.01.13✎ 17:29 | 
        (83) Да че-то закрутился, пропустил пару релизов :)).     | |||
| 86
    
        bananan 08.01.13✎ 17:31 | 
        Мне нужны многие поля из справочника вот, например текст запроса:
  |SELECT |$ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], |СпрСотр.ИНН [Алиас $Типизация] |FROM | |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | inner JOIN $Справочник.Сотрудники as СпрСотр (nolock) | on $ДокЗП.Сотр = СпрСотр.ID |"; Выдает ошибку: Invalid column name 'ИНН'. А в Справочнике Сотрудники эсть реквизит ИНН! Что здесь не так? | |||
| 87
    
        bananan 08.01.13✎ 17:32 | 
        * И ято значит [Алиас $Типизация]?     | |||
| 88
    
        КонецЦикла 08.01.13✎ 17:32 | 
        $СпрСотр.ИНН 
  [Алиас $Типизация] - убрать нах | |||
| 89
    
        КонецЦикла 08.01.13✎ 17:33 | 
        До чего ты туп блин... извини конечно     | |||
| 90
    
        bananan 08.01.13✎ 17:34 | 
        (89) извинятся не надо - бывает и туплю     | |||
| 91
    
        viktor_vv 08.01.13✎ 17:35 | 
        (86) Я ж в (73) специально исправил.     | |||
| 92
    
        bananan 08.01.13✎ 17:35 | 
        (880 Написал такой текст запроса:
  |SELECT |$ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], |СпрСотр.ИНН |FROM | |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | inner JOIN $Справочник.Сотрудники as СпрСотр (nolock) | on $ДокЗП.Сотр = СпрСотр.ID |"; Выдает ошибку: nvalid column name 'ИНН'. Реквищзит ИНН ТОЧНО есть в справочнике сотрудники!! | |||
| 93
    
        viktor_vv 08.01.13✎ 17:36 | 
        Для примитивных типов не надо типизировать.     | |||
| 94
    
        Mikeware 08.01.13✎ 17:37 | 
        (90) не "бывает", а "постоянно"     | |||
| 95
    
        Mikeware 08.01.13✎ 17:38 | 
        (93) почему бы и нет? правила приличия....     | |||
| 96
    
        bananan 08.01.13✎ 17:38 | 
        *(92) И откуда парсер или там SQL знает что такое СпрСотр?     | |||
| 97
    
        Mikeware 08.01.13✎ 17:39 | 
        финиш     | |||
| 98
    
        viktor_vv 08.01.13✎ 17:40 | 
        (95) Ну может быть, только придется писать, что такое типизация :)). Боюсь не осилю доступно.     | |||
| 99
    
        bananan 08.01.13✎ 17:40 | 
        (97)    Mikeware - ты даешь самые "полезные" подсказки и советы     | |||
| 100
    
        bananan 08.01.13✎ 17:42 | 
        Сменил СпрСотр.ИНН на СпрСотр.Налоговая - так он и такого поля не видит: Invalid column name 'Налоговая'     | |||
| 101
    
        viktor_vv 08.01.13✎ 17:43 | 
        |SELECT
  |$ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], |$СпрСотр.ИНН |FROM | |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | inner JOIN $Справочник.Сотрудники as СпрСотр (nolock) | on $ДокЗП.Сотр = СпрСотр.ID |"; Это чтобы было над чем пораскинуть. | |||
| 102
    
        КонецЦикла 08.01.13✎ 17:44 | 
        (92) Специально дразнишь?
  Втыкай в (88) до просветления Это же вторая строка почти такая же как первая! Только строку или число необязательно типизировать, можно написать $СпрСотр.ИНН ИНН или $СпрСотр.ИНН МойИННДляОтчета | |||
| 103
    
        bananan 08.01.13✎ 17:55 | 
        (102) Так как в (101) - работает     | |||
| 104
    
        Mikeware 08.01.13✎ 17:56 | 
        (103) так там и написано без ошибок...     | |||
| 105
    
        bananan 08.01.13✎ 18:08 | 
        Вот такой текст запроса:
  ТекстЗапроса = " |SELECT |$ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], |$СпрСотр.ДатаРождения |FROM | |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | inner JOIN $Справочник.Сотрудники as СпрСотр (nolock) | on $ДокЗП.Сотр = СпрСотр.ID |"; В ТаблицуЗначений выводятся пустые строки, т.е. ничего в Таблице значений нет! Есть только две колонки: Сотрудник и sp2291 | |||
| 106
    
        bananan 08.01.13✎ 18:13 | 
        *(105) Почему запрос ничего не возвращает?     | |||
| 107
    
        viktor_vv 08.01.13✎ 18:14 | 
        (105) Документы такие в базе вообще есть ?     | |||
| 108
    
        ЧеловекДуши 08.01.13✎ 18:16 | 
        (106)  inner JOIN  - По гугли, что есть JOIN и с чем его едят ;)     | |||
| 109
    
        bananan 08.01.13✎ 18:16 | 
        (107) Я, кажется ошибся, окно таблицы значений появилось , а в нем нет никаких данных, но в строке сатуса 1С - "выполняется обработка"     | |||
| 110
    
        ЧеловекДуши 08.01.13✎ 18:18 | 
        (109)Беги... беги от туда :)
  Или все же стоит быть трезвым ? ;) | |||
| 111
    
        viktor_vv 08.01.13✎ 18:19 | 
        (108) В данном слечае по барабану. Разве что удалили элементы справочника без контроля ссылочной целостности.     | |||
| 112
    
        bananan 08.01.13✎ 18:19 | 
        (110) В последний раз выпил немного вина - 15 ноября     | |||
| 113
    
        bananan 08.01.13✎ 18:23 | 
        (109) Да не ошибся я Сообщить(ТЗ.КоличествоСтрок()); выдает 0!     | |||
| 114
    
        bananan 08.01.13✎ 18:25 | 
        т.е. Такой код:
  ТекстОшибки = ""; Если ФС.СуществуетФайл(ИмяФайлаXML) <> 1 Тогда ТекстОшибки = "Файл """ + ИмяФайлаXML + """ не найден!"; ИначеЕсли ЗагрузитьВнешнююКомпоненту(КаталогИБ() + "v7plus.dll") <> 1 Тогда ТекстОшибки = "Компонента v7plus.dll не найдена!"; КонецЕсли; Если ПустаяСтрока(ТекстОшибки) <> 1 Тогда Предупреждение(ТекстОшибки); Возврат; КонецЕсли; ТекстЗапроса = " |SELECT | $ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], | $СпрСотр.ДатаРождения | ,$СпрСотр.РождГород |FROM |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | INNER JOIN $Справочник.Сотрудники as СпрСотр (nolock) | ON $ДокЗП.Сотр = СпрСотр.ID |"; Запр=СоздатьОбъект("ODBCRecordset"); Запр.УстановитьТекстовыйПараметр("НачДата", НачДата); Запр.УстановитьТекстовыйПараметр("КонДата", КонДата); ТЗ = Запр.ВыполнитьИнструкцию(ТекстЗапроса); ТЗ.ВыбратьСтроку(); Сообщить(ТЗ.КоличествоСтрок()); В таблицу значений ничего не попадает! | |||
| 115
    
        bananan 08.01.13✎ 18:27 | 
        а сообщить выдате 0     | |||
| 116
    
        viktor_vv 08.01.13✎ 18:34 | 
        Выполни
  ДокЗП = СоздатьОбъект("Документ.ВыплатаЗП"); Если ДокЗП.ВыбратьДокументы() = 0 Тогда Сообщить("Н у нету в базе документов ""Выплата ЗП"""); Иначе Сообщить("Таки какая-то фигня в запросе."); КонецЕсли; | |||
| 117
    
        bananan 08.01.13✎ 18:38 | 
        (116) Блин, таки он выдал: Н у нету в базе документов "Выплата ЗП     | |||
| 118
    
        Mikeware 08.01.13✎ 18:59 | 
        :-)))     | |||
| 119
    
        sapphire 09.01.13✎ 04:14 | 
        (115) открой для себя UNIREPS & UNIPROC c ИТС...     | |||
| 120
    
        Mikeware 09.01.13✎ 05:46 | 
        (119) а смысл? еще 100500 веток учить его ими пользоваться?
  зы. по-моем, бананан - это нечто типа wiki:Теорема_о_бесконечных_обезьянах | |||
| 121
    
        bananan 09.01.13✎ 12:27 | 
        (120) Дорогой, Mikeware вы тоже от обезьяны произошли, ибо каждый судит по себе.
  А по поводу документа ВыплатаЗП... Тут я НЕ ПОНИМАЮ, потому что - когда запускаю программу и Открывааю журнал Зарплаты - там есть два типа документов: Начисление ЗП и... Выплата ЗП. Если текст запроса такой: |SELECT | $ДокЗП.Сотрудник [Сотрудник $Справочник.Сотрудники], | $СпрСотр.Имя AS Name | ,$СпрСотр.Отчество AS Отчество | ,$СпрСотр.Пол AS Пол | ,$СпрСотр.ДокСерия AS ДокСерия | ,$СпрСотр.ДокНомер AS ДокНомер | ,$СпрСотр.ДокКогдаВыдан AS ДоккогдаВыдан | ,$СпрСотр.ДокКемВыдан AS ДокКемВыдан | ,$СпрСотр.ДатаРождения AS ДатаРождения | ,$СпрСотр.РождГород AS РождГород | ,$СпрСотр.ФактАдрес AS ФактАдрес | ,$СпрСотр.ФактИндекс AS ФактИндекс | ,$СпрСотр.ДатаПриема AS ДатаПриема | ,$СпрСотр.ТелефонДом AS ТелефонДом | ,$СпрСотр.ТелефонРаб AS ТелефонРаб | ,$СпрСотр.КодПользователя AS КодПользователя |FROM |$ДокументСтроки.НачислениеЗП as ДокЗП (nolock) | INNER JOIN $Справочник.Сотрудники as СпрСотр (nolock) | ON $ДокЗП.Сотрудник = СпрСотр.ID Запрос работает нормально и выдает 10000 с лишним строк... Если текст запроса такой: |SELECT | $ДокЗП.Сотрудник [Сотрудник $Справочник.Сотрудники], | $СпрСотр.Имя AS Name | ,$СпрСотр.Отчество AS Отчество | ,$СпрСотр.Пол AS Пол | ,$СпрСотр.ДокСерия AS ДокСерия | ,$СпрСотр.ДокНомер AS ДокНомер | ,$СпрСотр.ДокКогдаВыдан AS ДоккогдаВыдан | ,$СпрСотр.ДокКемВыдан AS ДокКемВыдан | ,$СпрСотр.ДатаРождения AS ДатаРождения | ,$СпрСотр.РождГород AS РождГород | ,$СпрСотр.ФактАдрес AS ФактАдрес | ,$СпрСотр.ФактИндекс AS ФактИндекс | ,$СпрСотр.ДатаПриема AS ДатаПриема | ,$СпрСотр.ТелефонДом AS ТелефонДом | ,$СпрСотр.ТелефонРаб AS ТелефонРаб | ,$СпрСотр.КодПользователя AS КодПользователя |FROM |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | INNER JOIN $Справочник.Сотрудники as СпрСотр (nolock) | ON $ДокЗП.Сотрудник = СпрСотр.ID выдает ошибку: Meta name parser error: поле таблицы не найдено "$ДокЗП.Сотрудник" Где здесь обезьяна зарыта. увжаемый, Mikeware?? | |||
| 122
    
        Ёпрст гуру 09.01.13✎ 12:32 | 
        (121) в табличной части документа ВыплатаЗП нет реквизита Сотрудник, и всего лишь     | |||
| 123
    
        sapphire 09.01.13✎ 12:36 | 
        (120) (122) Интересно, ТС вслепую запросы пишет?
  т.е. глянуть дерево метаданных и посмотреть что и где лежит ему, видимо, религия не позволяет :) | |||
| 124
    
        Mikeware 09.01.13✎ 12:36 | 
        (122) Обезьяна зарыта в ДНК того, кто ищет поле Сотрудник в шапке документа ВыплатаЗП. Причем зарыта весьма неглубоко, ибо эта обезьяна упорно не читает документацию.     | |||
| 125
    
        bananan 09.01.13✎ 12:37 | 
        *(121) И еще вопрос, я формирую запрос - тот что приведен первым, выполняю: ТЗ = Запр.ВыполнитьИнструкцию(ТекстЗапроса);
  ТЗ.ВыбратьСтроку(); И, я что-то не понимаю, но даю: Сообщить("ТЗ.Name= "+ТЗ.Name+"ТЗ.Отчество="+ТЗ.Отчество); В окне сообщений вижу: ТЗ.Name= ТЗ.Отчество= Я не так как нужно пытаюсь вызвать поле из таблицы значений? (122) Добрий день, Ёпрст4, да тут дело не в том, вчера ошибки не выдавал (после того, я видимо сделал правки в коде). Так вот, до этих правок в коде - ошибки не выдавал, но и... не выдавал никаких значений! К тому же, когда запустил такой код: ДокЗП = СоздатьОбъект("Документ.ВыплатаЗП"); Если ДокЗП.ВыбратьДокументы() = 0 Тогда Сообщить("Н у нету в базе документов ""Выплата ЗП"""); Иначе Сообщить("Таки какая-то фигня в запросе."); КонецЕсли; Он выдал.: Н у нету в базе документов ""Выплата ЗП"" Хотя если смотреть Журнал Зарплаты - Там документы ВыплатаЗП - есть и их там довольно много!!!! | |||
| 126
    
        Mikeware 09.01.13✎ 12:37 | 
        (123) контрол-цэ - контрол-вэ...     | |||
| 127
    
        Ёпрст гуру 09.01.13✎ 12:40 | 
        (125) смотри ВыплатаЗПБ     | |||
| 128
    
        Ёпрст гуру 09.01.13✎ 12:40 | 
        мот не тот вид документа смотришь в журнале своём     | |||
| 129
    
        sapphire 09.01.13✎ 12:40 | 
        (126) Надо кусок 1cpp сделать шароварным - т.е. ответил на ряд вопросов функционал доступен, нет - ПНХ.     | |||
| 130
    
        Ёпрст гуру 09.01.13✎ 12:41 | 
        по-поводу (121)
  у тебя есть Сотр, а не Сотрудник в ТЧ дока. | |||
| 131
    
        bananan 09.01.13✎ 12:42 | 
        Ну забыл я, что в ВыплатаЗП это поле назхывается Сотр.
  Запрос: |SELECT | $ДокЗП.Сотр [Сотрудник $Справочник.Сотрудники], | $СпрСотр.Имя AS Name | ,$СпрСотр.Отчество AS Отчество | ,$СпрСотр.Пол AS Пол | ,$СпрСотр.ДокСерия AS ДокСерия | ,$СпрСотр.ДокНомер AS ДокНомер | ,$СпрСотр.ДокКогдаВыдан AS ДоккогдаВыдан | ,$СпрСотр.ДокКемВыдан AS ДокКемВыдан | ,$СпрСотр.ДатаРождения AS ДатаРождения | ,$СпрСотр.РождГород AS РождГород | ,$СпрСотр.ФактАдрес AS ФактАдрес | ,$СпрСотр.ФактИндекс AS ФактИндекс | ,$СпрСотр.ДатаПриема AS ДатаПриема | ,$СпрСотр.ТелефонДом AS ТелефонДом | ,$СпрСотр.ТелефонРаб AS ТелефонРаб | ,$СпрСотр.КодПользователя AS КодПользователя |FROM |$ДокументСтроки.ВыплатаЗП as ДокЗП (nolock) | INNER JOIN $Справочник.Сотрудники as СпрСотр (nolock) | ON $ДокЗП.Сотр = СпрСотр.ID Не выдает ничего!!! Почему:: (127) мне нужно в запросе ВыплатаЗП, а не ВыплатаЗПБ | |||
| 132
    
        Ёпрст гуру 09.01.13✎ 12:44 | 
        (131) ну нет таких документов в базе и привет.
  Смотри, какой еще документ имеет такой же синоним (это то, что ты в журнальчике своём видишь потом) | |||
| 133
    
        bananan 09.01.13✎ 12:47 | 
        (132) смотрю в конфигупаторе документ ВыплатаЗП:
  Синоним: Выплата ЗП, что мне программа и показывает, а ЗАПРОС документов ВыплатаЗП НЕ ВИДИТ. Почему? | |||
| 134
    
        Mikeware 09.01.13✎ 12:48 | 
        (132) не, ну каково тебе (133)? :-)))     | |||
| 135
    
        Ёпрст гуру 09.01.13✎ 12:49 | 
        (133) это же очевидно - Сотр в документе имеет тип НЕ
  Справочник.Сотрудники. Вот при inner join у тебя и пусто | |||
| 136
    
        Ёпрст гуру 09.01.13✎ 12:49 | 
        (134) :)     | |||
| 137
    
        Ёпрст гуру 09.01.13✎ 12:50 | 
        у меня есть его md. мне проще 
  :) | |||
| 138
    
        bananan 09.01.13✎ 12:51 | 
        *(133)    Ёпрст4 - как всегда прав. Документ ВыплатаЗПБ тоже имеет синоним Выплата ЗП!
  еще один ну очень маленький вопрос. Как мне сообщить какую-то ячеку из таблицы значений? Такой код: Сообщить("ТЗ.Name= "+ТЗ.Name+"ТЗ.Отчество="+ТЗ.Отчество); Выдает: ТЗ.Name= ТЗ.Отчество= | |||
| 139
    
        Ёпрст гуру 09.01.13✎ 12:57 | 
        ТЗ.ПолучитьСтрокуПоНомеру(1);//или какая там тебя строка интересует ?     | |||
| 140
    
        monsterZE 09.01.13✎ 12:58 | 
        выбратьСтроки
  пока получитьСтроку()=1 цикл .. | |||
| 141
    
        Mikeware 09.01.13✎ 12:58 | 
        (138) или ВыбратьСтроку()
  а вообще, вопрос уже за грань добра и зла... | |||
| 142
    
        sapphire 09.01.13✎ 12:59 | 
        (137) счастливый обладатель md-шника :D     | |||
| 143
    
        viktor_vv 09.01.13✎ 13:00 | 
        (137) Так ты читер :)).     | |||
| 144
    
        Mikeware 09.01.13✎ 13:02 | 
        (142) заветного эмдэшника :-)     | |||
| 145
    
        bananan 09.01.13✎ 13:03 | 
        Все большое спасибо! Отдельное спасибо Ёпрст4!     | |||
| 146
    
        КонецЦикла 09.01.13✎ 13:29 | 
        (137) :)
  Подключись через МД и всоси в автора ЗНАНИЕ | |||
| 147
    
        Mikeware 09.01.13✎ 13:30 | 
        (146) автору надо не "всосать", а "вдуть"...     | |||
| 148
    
        sapphire 09.01.13✎ 13:33 | 
        (147) Он еще #ЗагрузитьИзФайла не освоил? :)     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |