UDDB: Дополнительные поля покупателя

Автор Сообщение
Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 08.10.2007 16:12 Заголовок сообщения: Re: Новая статья

Dmitry Pestov писал(а):
UDDB: Дополнительные поля покупателя


Дима я попробавал создать новые поля для покупателей, класно получилось. Спасибо за статейку! Только я создавал по связи один ко многим. Получается немного не удобно вносить информацию т.к. она располагается в табличном варианте, а самое большое неудобство это дата. Как можно преобразовать формат даты? Мне нужно указать дату 31.12.2099 в Скальской форме отображается только 6 цифр (000000), если я указываю 311299 то сохраняется дата 31.12.1999.
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.

Dmitry Pestov
Заслуженный форумщик

Зарегистрирован: 21.06.2007
Сообщения: 94
Откуда: Москва, ApicoSoft

Добавлено: 08.10.2007 16:59 Заголовок сообщения: Re: Новая статья

Nikolay писал(а):
Только я создавал по связи один ко многим. Получается немного не удобно вносить информацию т.к. она располагается в табличном варианте, а самое большое неудобство это дата. Как можно преобразовать формат даты? Мне нужно указать дату 31.12.2099 в Скальской форме отображается только 6 цифр (000000), если я указываю 311299 то сохраняется дата 31.12.1999.

А вот и не знаю что подсказать Sad
При таком вводе год до 49 включительно будет интерпретироваться как 21й век, а остальные как 20й. Календарик по Shift-F6 в этой форме не работает. Если написать год полностью, то он обрежется. Хотя явно разрешает 8 символов. Засада.

Я пробовал на 2.2 SR1 — нужно проверить на более поздних версиях, вдруг исправили. Или может кто-нибудь знает как обойти?
_________________
Dmitry Pestov

Блог ScalaHelp.RU — практические вопросы использования Scala

aav
Администратор
Администратор

Зарегистрирован: 14.09.2004
Сообщения: 1081
Откуда: Санкт-Петербург

Добавлено: 09.10.2007 12:22 Заголовок сообщения: Re: Новая статья

Nikolay писал(а):
Мне нужно указать дату 31.12.2099

А более поздняя принципиально не подойдёт? Скала в некоторых случаях позволяет вводить даты 000000 (интерпретируемая в дальнейшем как 01.01.1900) как минимальную из диапазона от нуля до бесконечности и 999999 — как максимальную.
Ещё одно соображение на счет ввода информации через механизм UDDB: Помимо глюкавости, здесь есть и положительные моменты, так, например, у нас часть дополнительной информации вводится через UDDB (через системные утилиты, что позволяет обойти ограничение на количество лицензий на финансовые модули (ведь ввод информации в карточку покупателя занимает такую лицензию). Таким образом, основную информацию вводит один человек, назначенный "администратором" картотеки покупателей, а дополнительную, например, имена, должности и телефоны контактных лиц — все остальные, кому не лень)

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 09.10.2007 14:32 Заголовок сообщения:
Класно получилось!
при вводе 999999 в таблице сохраняется 9999-12-31 00:00:00.000
то что нужно было.
Спасибо!
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 09.10.2007 14:40 Заголовок сообщения: Re: Новая статья

aav писал(а):
например, у нас часть дополнительной информации вводится через UDDB (через системные утилиты, что позволяет обойти ограничение на количество лицензий на финансовые модули)


А можно в этом моменте поподробнее Smile
Где и как настроить ввод дополнительной информации через системные утилиты?
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.

aav
Администратор
Администратор

Зарегистрирован: 14.09.2004
Сообщения: 1081
Откуда: Санкт-Петербург

Добавлено: 10.10.2007 08:20 Заголовок сообщения: Где…

Nikolay писал(а):
Где и как настроить ввод дополнительной информации через системные утилиты?

Где: Системные утилиты -> Дополнительные данные -> Ввод/Корректировка дополнительных данных (у нас iScala 2.2)

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 10.10.2007 13:47 Заголовок сообщения: Получилось
Exclamation По крутому Exclamation
Получилось Это надо отметить! Спасибо!
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 15.10.2007 09:02 Заголовок сообщения: Еще один вопросик в тему
Question Подскажите можно делать импорт (стандартным функционалом) информации в UDDB таблицы?
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 15.10.2007 16:19 Заголовок сообщения: Re: Еще один вопросик в тему

Nikolay писал(а):
Question Подскажите можно делать импорт (стандартным функционалом) информации в UDDB таблицы?

Если стандартным функционалом сиквела, то можно.

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 02.11.2007 13:02 Заголовок сообщения: прикручивание справочника к UDDB
Я создал UDDB: Дополнительные поля покупателя, все очень класно получилось, народ работает радуется, но возникла новая затея в расширении функционала. Cool
Теперь хочется чтоб в эти дополнительные поля (для более точного заполнения) были привязаны справочники, как стандартные из самой Скалы, так и не стандартные (созданные). Question Кто знает возможно ли такое? И как можно это осуществить.
Заранее благодарен!
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 02.11.2007 13:35 Заголовок сообщения: Re: прикручивание справочника к UDDB

Nikolay писал(а):
Теперь хочется чтоб в эти дополнительные поля (для более точного заполнения) были привязаны справочники, как стандартные из самой Скалы, так и не стандартные (созданные). Question Кто знает возможно ли такое? И как можно это осуществить.
Заранее благодарен!

В Скала 2.2 можно посмотреть в сторону "Быстрых поисков".

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 09.11.2007 12:52 Заголовок сообщения: Ограничить значения быстрым поиском
Быстрый поиск поставил все работает отлично, но значения незнаю как ограничить значениями из быстрого поиска.
Люди добрые подскажите Rolling Eyes
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
Jugulator
Главный форумщик

Зарегистрирован: 08.10.2004
Сообщения: 428

Добавлено: 09.11.2007 17:11 Заголовок сообщения:

Цитата:
как ограничить значениями из быстрого поиска


Насколько помню, галочку можно поставить при подключении быстрого поиска к полю на форме iScala.

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 12.11.2007 08:06 Заголовок сообщения:
Не ставится пишет ошибку Confused
—————————————————
Данный быстрый поиск не может быть использован для проверки.
—————————————————
<?xml version="1.0" ?>
<ErrHistory>
<Error>
<Type>COM</Type>
<Code>0x80040464</Code>
<Descr>This Snap Search cannot be used for validation.</Descr>
</Error>
<Error>
<Type>COM</Type>
<Code>0x80040E14</Code>
<Descr>This Snap Search cannot be used for validation.</Descr>
<Method>CScaQueryTool::AddQueryFieldLink</Method>
<SrcFile>ScaQueryTool.cpp</SrcFile>
<SrcLine>707</SrcLine>
</Error>
<Error>
<Type>COM</Type>
<Code>0x80040E14</Code>
<Descr>The ORDER BY clause is invalid in views, inline functions, derived tables, and subqueries, unless TOP is also specified.</Descr>
<Guid>{{0C733A63-2A1C-11CE-ADE5-00AA0044773D}}</Guid>
<Source>Microsoft OLE DB Provider for SQL Server</Source>
</Error>
</ErrHistory>
—————————————————
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
aav
Администратор
Администратор

Зарегистрирован: 14.09.2004
Сообщения: 1081
Откуда: Санкт-Петербург

Добавлено: 13.11.2007 14:14 Заголовок сообщения: Как интересно она ругается…

Nikolay писал(а):
Не ставится пишет ошибку

Ой, какие интересные слова пишет Скала Very Happy
Не уверен, что смогу помочь, но просто из соображений любопытства, к какому полю Вы пытаетесь привязать какой быстрый поиск (можно опубликовать текст запроса из этого быстрого поиска)?
Собственно, вызывает вопрос вот этот код:

Код:
<Descr>The ORDER BY clause is invalid in views, inline functions, derived tables, and subqueries, unless TOP is also specified.</Descr>

Не пробовали "копать" в этом направлении?

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 13.11.2007 15:19 Заголовок сообщения: не то слово ругается она просто матом кроет :)))
Я создал несвязаную таблицу через админ консоль "Табл.определ.пользователем" она служит справочником и там 3 столбца назвал TEAM.
Затем создал там вторую таблицу (связаную с SL14) назвал ее SL14ADD. Эту связаную таблицу зацепил как UDDB: Дополнительные поля к форме адреса поставок. Затем через быстрый поиск в режиме конструктора создал быстрый поиск в таблицеSL14ADD на таблицу TEAM.
Быстрый поиск представлен графически в админ консоли.
Поиск элементарный без лишних наворотов выбрана одна таблица, в sql я думаю он будет выглядеть примерно так
Select TEAM01, TEAM02
From TEAM
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
aav
Администратор
Администратор

Зарегистрирован: 14.09.2004
Сообщения: 1081
Откуда: Санкт-Петербург

Добавлено: 13.11.2007 16:32 Заголовок сообщения: Re: не то слово ругается она просто матом кроет :)))

Nikolay писал(а):
Быстрый поиск представлен графически в админ консоли.

А если этот быстрый поиск выгрузить в файл (Файл->Экспорт в Файл), то каков будет текст?
Например, у меня есть быстрый поиск, который, если выгрузить в файл, будет выглядеть так:

Код:
<Query name="SL_ExchRate" UseSQL="-1"><SQLText>SELECT
case when SL03.[SL03054]=0 then case SL03.[SL03014] when 0 then 1 else SL03.[SL03013]/SL03.[SL03014] end
   when SL03.[SL03014]-SL03.[SL03054]=0 then 1 else (SL03.[SL03013]-SL03.[SL03053])/(SL03.[SL03014]-SL03.[SL03054]) end as [Курс],
SL03.[SL03002] AS [Сч.-ф],
SL03.[SL03003] AS [№ пров],
SL03.[SL03004] AS [Дата с-ф],
SL03.[SL03014] AS [Сумма],
SL03.[SL03054] AS [Оплачено]
FROM {SL03} SL03 (nolock) where SL03.[SL03014]&lt;&gt;SL03.[SL03054] and SL03.[SL03001]=» +upper(@Customer) +»</SQLText><Descriptions><Description LangCode="ENG">Текущий курс СФ Покупателя</Description><Description LangCode="RUS">Текущий курс СФ Покупателя</Description></Descriptions><Tables/><Joins/><Columns/><Parameters><Parameter ID="1" DataType="7" Column="-1" Row="0" Name="@Customer" DefaultValue="" Length="10" FractionLength="0"><Descriptions><Description LangCode="ENG">Код покупателя</Description><Description LangCode="RUS">Код покупателя</Description></Descriptions></Parameter></Parameters></Query>

vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 13.11.2007 17:28 Заголовок сообщения:

Nikolay писал(а):
Не ставится пишет ошибку Confused


Nikolay писал(а):
Select TEAM01, TEAM02
From TEAM


точно, не заканчивается ?

Код:
ORDER BY TEAM01 или TEAM02


Как я понял, быстрые поиски для сравнения вводимого значения с возвращаемыми значениями быстрого поиска, не любят пробелов в названии полей, даже заключенных в квадратные скобки, и сортировки.
Причем как обычные быстрые поиски они работают нормально, а при использовании значений только из них, начинают сопротивляться.

Jugulator
Главный форумщик

Зарегистрирован: 08.10.2004
Сообщения: 428

Добавлено: 13.11.2007 18:44 Заголовок сообщения:

Цитата:
<Descr>The ORDER BY clause is invalid in views, inline functions, derived tables, and subqueries, unless TOP is also specified.</Descr>

Если есть ORDER BY, то надо в запросе указать TOP 100 PERCENT перед списком полей

Код:
SELECT TOP 100 PERCENT * FROM TABLE

или же в подзапросах не указывать ORDER BY, а делать это во внешнем SELECT

Код:
SELECT TOP 100 PERCENT * FROM (SELECT * FROM SUBQUERYTABLE) AS T ORDER BY FIELD

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 14.11.2007 11:25 Заголовок сообщения: Re: не то слово ругается она просто матом кроет :)))
У меня получается вот такая выгрузка в файл:

<Query name="TEAM" UseSQL="0">
<SQLText/>

<Descriptions>
<Description LangCode="ENG">TEAM</Description>
<Description LangCode="RUS">КОМАНДА</Description>
</Descriptions>

<Tables>
<Table ID="2" Name="TEAM" Alias="TEAM" XPos="20" YPos="17" High="0" Width="0" WidthColumn="0" WidthDataType="0" WidthDescription="0"/>
</Tables>
<Joins/>

<Columns>

<Column ID="1" Display="-1" GroupBy="0" Returned="-1" OrderBy="1" OrderByID="0" AggregateOp="" Alias="[КОД КОМАНДЫ]" Text="TEAM.[TEAMCOD]" Table="TEAM">

<Conditions>
<Condition/>
<Condition/>
<Condition/>
</Conditions>

<Headers>
<Header LangCode="RUS">КОД КОМАНДЫ</Header>
</Headers>
</Column>

<Column ID="5" Display="-1" GroupBy="0" Returned="0" OrderBy="0" OrderByID="1" AggregateOp="" Alias="[НАИМЕНОВАНИЕ]" Text="TEAM.[TEAMNAME]" Table="TEAM">

<Conditions>
<Condition/>
<Condition/>
<Condition/>
</Conditions>

<Headers>
<Header LangCode="">[НАИМЕНОВАНИЕ]</Header>
<Header LangCode=" ">[НАИМЕНОВАНИЕ]</Header>
</Headers>
</Column>
</Columns>
<Parameters/>
</Query>

Я не понял в быстрых поисках всегда надо использовать самописный запрос SQL графический конструктор не корректно работает? Или я не умею просто пользоватся графическим конструктором?
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.

Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 14.11.2007 11:31 Заголовок сообщения:
Как картинку можно прикрепить Rolling Eyes
Хотел графическое изображение быстрого поиска показать, но не получилось прикрепить. Laughing
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.
Nikolay
Заслуженный форумщик

Зарегистрирован: 22.05.2007
Сообщения: 92
Откуда: Almaty

Добавлено: 14.11.2007 11:42 Заголовок сообщения: Vome ты гений!

vome писал(а):
Как я понял, быстрые поиски для сравнения вводимого значения с возвращаемыми значениями быстрого поиска, не любят пробелов в названии полей, даже заключенных в квадратные скобки, и сортировки.
Причем как обычные быстрые поиски они работают нормально, а при использовании значений только из них, начинают сопротивляться.


Vome ты гений! Wink я убрал в конструкторе сортировку и все заработало! Ограничение работает без сортировки.
Тогда не понятно Question а почему оно не может работать с сортировкой. Rolling Eyes
_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь.

Jugulator
Главный форумщик

Зарегистрирован: 08.10.2004
Сообщения: 428

Добавлено: 14.11.2007 15:04 Заголовок сообщения:
Значит, надо трассировку SQL смотреть — что там получается при проверке.
aav
Администратор
Администратор

Зарегистрирован: 14.09.2004
Сообщения: 1081
Откуда: Санкт-Петербург

Добавлено: 14.11.2007 15:26 Заголовок сообщения: Re: не то слово ругается она просто матом кроет :)))

Nikolay писал(а):
У меня получается вот такая выгрузка в файл:

<Query name="TEAM" UseSQL="0">
<SQLText/>

<Parameters/>
</Query>

Я не понял в быстрых поисках всегда надо использовать самописный запрос SQL графический конструктор не корректно работает? Или я не умею просто пользоватся графическим конструктором?

Если сказать "Использовать SQL", то получится:

Код:
SELECT TEAM.[TEAMCOD] AS [КОД КОМАНДЫ], TEAM.[TEAMNAME] AS [НАИМЕНОВАНИЕ]
 FROM {TEAM} TEAM ORDER BY [КОД КОМАНДЫ] ASC


Что в общем-то соответствует тому, что задано в графическом интерфейсе, только вот там (в графическом интерфейсе) можно убрать сортировку, но невозможно написать "TOP 100 PERCENT". Лично я предпочитаю всё писать руками Very Happy

Nikolay писал(а):
Как картинку можно прикрепить Rolling Eyes

Я уже писал ранее, загрузка картинок запрещена из соображений безопасности. Картинку нужно прислать мне, я её закачаю и пришлю ссылку, как вставить в сообщение