По теме из базы знаний
- Какие риски и ответственность берет на себя бизнес-аналитик
- Я - ЗУПер! Часть 4. Проблемы, возникающие при заключении договоров
- tempdb, почему она всё время растет?
- Оптимизация бизнес-процессов при внедрении информационных систем: правила и технологии
- Новый интерфейс 8.5: записки сумасшедшего. Часть 1
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
1. Если мы внутри цикла, то Док обязательно содержит значение и проверять его совершенно не нужно.
2. Но вот что мы находим в описаннии функции
"ПустоеЗначение(<Значение>)"
- значения следующих типов: ''справочник'', ''перечисление'', ''документ'', ''счет'', ''вид субконто'', ''план счетов'', ''календарь'' проверяются как в методах Выбран для соответствующего типа объекта.;
Тут бы, конечно, уточнить бы, что значение метода Выбран наоборот.
3. А на самом деле внутри цикла:
Док = Счет-фактура ХХХХХХ (01.05.07)
Док.Выбран() = 1
ПустоеЗначение(Док) = 1
ПустоеЗначение(Док.ТекущийДокумент()) = 0
ТипЗначения(Док) = 12
ТипЗначения(Док.ТекущийДокумент()) = 12
ТипЗначенияСтр(Док) = "Документ"
ТипЗначенияСтр(Док.ТекущийДокумент()) = "Документ"
Док.Вид() = "СчетФактура"
Док.ТекущийДокумент().Вид() = "СчетФактура"
2. Но вот что мы находим в описаннии функции
"ПустоеЗначение(<Значение>)"
- значения следующих типов: ''справочник'', ''перечисление'', ''документ'', ''счет'', ''вид субконто'', ''план счетов'', ''календарь'' проверяются как в методах Выбран для соответствующего типа объекта.;
Тут бы, конечно, уточнить бы, что значение метода Выбран наоборот.
3. А на самом деле внутри цикла:
Док = Счет-фактура ХХХХХХ (01.05.07)
Док.Выбран() = 1
ПустоеЗначение(Док) = 1
ПустоеЗначение(Док.ТекущийДокумент()) = 0
ТипЗначения(Док) = 12
ТипЗначения(Док.ТекущийДокумент()) = 12
ТипЗначенияСтр(Док) = "Документ"
ТипЗначенияСтр(Док.ТекущийДокумент()) = "Документ"
Док.Вид() = "СчетФактура"
Док.ТекущийДокумент().Вид() = "СчетФактура"
To Abadonna, Альф
В нутри цикла Док точно не пустой при переборе, там как минимум ссылка на документ и почему он показывает пустую я не понимаю,
а насчет Выбрать() и Док.ТекущийДокумент() я и так знаю , но вот только в комплексной
Функция глПредставлениеДокумента(Документ) Экспорт
Если (ТипЗначения(Документ)=12)
и (ПустоеЗначение(Документ)=0)
и как правильно написал maloi_a ТипЗначения(Документ) = 12, а ПустоеЗначение(Документ)=1
В нутри цикла Док точно не пустой при переборе, там как минимум ссылка на документ и почему он показывает пустую я не понимаю,
а насчет Выбрать() и Док.ТекущийДокумент() я и так знаю , но вот только в комплексной
Функция глПредставлениеДокумента(Документ) Экспорт
Если (ТипЗначения(Документ)=12)
и (ПустоеЗначение(Документ)=0)
и как правильно написал maloi_a ТипЗначения(Документ) = 12, а ПустоеЗначение(Документ)=1
maloi_a Написал:
-------------------------------------------------------
> 2. Но вот что мы находим в описаннии функции
> "ПустоеЗначение(<Значение>"
>
> - значения следующих типов: ''справочник'',
> ''перечисление'', ''документ'', ''счет'', ''вид
> субконто'', ''план счетов'', ''календарь''
> проверяются как в методах Выбран для
> соответствующего типа объекта.;
>
Вот в этом видимо и есть правда
> Тут бы, конечно, уточнить бы, что значение метода
> Выбран наоборот.
>
-------------------------------------------------------
> 2. Но вот что мы находим в описаннии функции
> "ПустоеЗначение(<Значение>"
>
> - значения следующих типов: ''справочник'',
> ''перечисление'', ''документ'', ''счет'', ''вид
> субконто'', ''план счетов'', ''календарь''
> проверяются как в методах Выбран для
> соответствующего типа объекта.;
>
Вот в этом видимо и есть правда
> Тут бы, конечно, уточнить бы, что значение метода
> Выбран наоборот.
>
just Написал:
-------------------------------------------------------
> To Abadonna, Альф
> В нутри цикла Док точно не пустой при переборе,
> там как минимум ссылка на документ и почему он
> показывает пустую я не понимаю,
Это невозможно понять = это надо запомнить ;)
Почитай внимательно замечание в главе 12 на станице 239 описания встроенного языка, часть 1. Там есть косвенное объяснение этому.
> а насчет Выбрать() и Док.ТекущийДокумент() я и
> так знаю , но вот только в комплексной
> Функция глПредставлениеДокумента(Документ)
> Экспорт
> Если (ТипЗначения(Документ)=12)
> и (ПустоеЗначение(Документ)=0)
>
> и как правильно написал maloi_a
> ТипЗначения(Документ) = 12, а
> ПустоеЗначение(Документ)=1
При вызове функции будет неправильно глПредставлениеДокумента(Док), надо писать глПредставлениеДокумента(Док.ТекущийДокумент())
-------------------------------------------------------
> To Abadonna, Альф
> В нутри цикла Док точно не пустой при переборе,
> там как минимум ссылка на документ и почему он
> показывает пустую я не понимаю,
Это невозможно понять = это надо запомнить ;)
Почитай внимательно замечание в главе 12 на станице 239 описания встроенного языка, часть 1. Там есть косвенное объяснение этому.
> а насчет Выбрать() и Док.ТекущийДокумент() я и
> так знаю , но вот только в комплексной
> Функция глПредставлениеДокумента(Документ)
> Экспорт
> Если (ТипЗначения(Документ)=12)
> и (ПустоеЗначение(Документ)=0)
>
> и как правильно написал maloi_a
> ТипЗначения(Документ) = 12, а
> ПустоеЗначение(Документ)=1
При вызове функции будет неправильно глПредставлениеДокумента(Док), надо писать глПредставлениеДокумента(Док.ТекущийДокумент())
При вызове глПредставлениеДокумента(Док) как раз и отслеживается
Если (ТипЗначения(Документ)=12)
и (ПустоеЗначение(Документ)=0)
Просто возвратит пустую строку - без представления.
Я бы просто поправил вместо Возврат "" -
Возврат ?(ТипЗначения(Документ)=12,Возврат глПредставлениеДокумента(Док.ТекущийДокумент()),"");
И всё.
Хоть как вызывай - будет правильнее.
Док <> Док.ТекущийДокумент().
Просто функция "ПустоеЗначение" работает не так, как подразумевается в описании.
Надо не объяснять, а поправить описание.
Я понял just, он изъясняется логично.
Это функция работает нелогично.
Если (ТипЗначения(Документ)=12)
и (ПустоеЗначение(Документ)=0)
Просто возвратит пустую строку - без представления.
Я бы просто поправил вместо Возврат "" -
Возврат ?(ТипЗначения(Документ)=12,Возврат глПредставлениеДокумента(Док.ТекущийДокумент()),"");
И всё.
Хоть как вызывай - будет правильнее.
Док <> Док.ТекущийДокумент().
Просто функция "ПустоеЗначение" работает не так, как подразумевается в описании.
Надо не объяснять, а поправить описание.
Я понял just, он изъясняется логично.
Это функция работает нелогично.
Я тоже расстраиваюсь, но потом успокаиваюсь.
Могу добавить ещё две функции Общего назначения (находятся даже в одной ветке):
Состояние(Док); - невероятно
и
Сообщить(Док); - логично
А также
Состояние(Док.ТекущийДокумент()); - нелогично
и
Сообщить(Док.ТекущийДокумент()); - логично
Остальные все логично:
Состояние(""+Док);
и
Сообщить(""+Док);
Состояние(""+Док.ТекущийДокумент());
и
Сообщить(""+Док.ТекущийДокумент());
Где выводится правильно?
Могу добавить ещё две функции Общего назначения (находятся даже в одной ветке):
Состояние(Док); - невероятно
и
Сообщить(Док); - логично
А также
Состояние(Док.ТекущийДокумент()); - нелогично
и
Сообщить(Док.ТекущийДокумент()); - логично
Остальные все логично:
Состояние(""+Док);
и
Сообщить(""+Док);
Состояние(""+Док.ТекущийДокумент());
и
Сообщить(""+Док.ТекущийДокумент());
Где выводится правильно?
Приходит студент на экзамен, как понимаете - полный 0...
И говорит:
- Товарищ профессор, вот почему всегда все экзамены по одной схеме проводятся, давайте что-нибудь изменим, типа наоборот... т.е. если вы на 3 моих вопроса не ответите- то ставите мне 5, ответите - на ваше усмотрение... Идет?
Профессор думает: "Ну, я - профессор, и что - не отвечу на вопросы студент...?" и говорит: "Идет! Давайте ваши вопросы!"
Студент:
- Вопрос первый: что такое законно, но нелогично?
Профессор задумался, думал так-сяк - не знаю!!!
Студент: вот вы, профессор, вам 60 лет, а у вас молодая жена 25 лет... Законно?
Профессор: законно!
Студент: Но нелогично!
Профессор: согласен... Давайте второй вопрос!
Студент:
- Вопрос второй: что такое логично, но незаконно?
Профессор задумался, думал так-сяк - не знаю!!!
Студент: у вашей молодой жены наверняка есть любовник, вам ведь все-таки 60 лет... Логично?
Профессор: логично!
Студент: Но незаконно!
Профессор: но незаконно! Давайте третий вопрос!
Студент:
- Вопрос третий: что такое и нелогично, и незаконно?
Профессор думал-думал, думал-думал... не выходит! и говорит: не знаю! говори ответ!
Студент:
... продолжи анекдот сам...
И говорит:
- Товарищ профессор, вот почему всегда все экзамены по одной схеме проводятся, давайте что-нибудь изменим, типа наоборот... т.е. если вы на 3 моих вопроса не ответите- то ставите мне 5, ответите - на ваше усмотрение... Идет?
Профессор думает: "Ну, я - профессор, и что - не отвечу на вопросы студент...?" и говорит: "Идет! Давайте ваши вопросы!"
Студент:
- Вопрос первый: что такое законно, но нелогично?
Профессор задумался, думал так-сяк - не знаю!!!
Студент: вот вы, профессор, вам 60 лет, а у вас молодая жена 25 лет... Законно?
Профессор: законно!
Студент: Но нелогично!
Профессор: согласен... Давайте второй вопрос!
Студент:
- Вопрос второй: что такое логично, но незаконно?
Профессор задумался, думал так-сяк - не знаю!!!
Студент: у вашей молодой жены наверняка есть любовник, вам ведь все-таки 60 лет... Логично?
Профессор: логично!
Студент: Но незаконно!
Профессор: но незаконно! Давайте третий вопрос!
Студент:
- Вопрос третий: что такое и нелогично, и незаконно?
Профессор думал-думал, думал-думал... не выходит! и говорит: не знаю! говори ответ!
Студент:
... продолжи анекдот сам...
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот