Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral


СЛУЖБА ОБРАБОТКИ НАКЛАДНЫХ

08.11.2013

ТЕСТОВОЕ ЗАДАНИЕ

Задание предназначено для проверки квалификации соискателя по разработке WCF-сервисов и СУБД.

Разработать систему обработки накладных, загружаемых в виде xml-файлов. Требования к системе:

Накладные загружаются в составе xml-файла (пример файла waybills. xml для загрузки прилагается) Описание элементов xml-файла. Элементы шапки накладной:

doc_number

номер накладной

Не пустой

create_date

дата накладной

Валидная дата

cn

наименование отправителя

Не пустой

ci

ИНН отправителя

10 либо 12 цифр

ck

КПП отправителя

9 цифр, если ИНН – 10 цифр; пусто, если ИНН – 12 цифр

rn

наименование получателя

Не пустой

ri

ИНН получателя

10 либо 12 цифр

rk

КПП получателя

9 цифр, если ИНН – 10 цифр; пусто, если ИНН – 12 цифр

Элементы строк накладной:

EAN13

код EAN-13 продукции

13 цифр

jn

наименование производителя продукции

Не пустой

inn

ИНН производитель продукции

10 цифр, 12 цифр либо пусто

kpp

КПП производителя продукции

9 цифр, если ИНН – 10 цифр; пусто, если ИНН – 12 цифр либо если ИНН - пусто

short_name

наименование продукции

Не пустой

volume

емкость единицы продукции

>0

percent_alc

крепость

>0

price

цена единицы продукции

>0

count

количество единиц продукции

>0

Если производитель – иностранная организация (импортная продукция), элементы ИНН/КПП отсутствуют в файле.

Создать в ms sql максимально нормализованное реляционное хранилище загружаемых накладных. Хранилище содержит таблицы: Шапки накладных (уникальные номер/дата/отправитель/получатель) Id Номер Дата Id отправителя Id получателя Строки накладных (уникальные id накладной/ean13/) Id Id накладной Id ean13 цена count Справочник организаций (уникальные Наименование/ИНН/КПП) Id Наименование ИНН КПП Справочник продукции (уникальный ean13) Id Ean13 Наименование Крепость Id емкости Id производителя Справочник значений емкости (уникальная емкость) Id емкость Разработать wcf-сервис по разбору xml-файла и загрузке данных из него в хранилище из п. 3. Требования к формату полей см. в п. 2. Если встречается накладная, у которой набор значений (doc_number, create_date, ci, ck, ri, rk) совпадает с этим набором у накладной, которая уже имеется в БД, то не вставлять такую накладную. Также не вставлять накладную, для которой не выполняется хотя бы одно из требований п. 5. По результату обработки xml-файла формировать текстовый файл журнала. В журнал записывать успехи вставок, а также не успехи вставок с указанием их причины. После получения ошибки вставки переходить к следующей накладной. Предоставить решение задания в виде: Скрипт объектов БД Дамп БД с загруженным в нее файлом Солюшен wcf-сервиса. Приложен xml-файл waybills_err. xml с ошибками в данных. Обработать этот файл, приложить файл журнала, в котором будут видны найденные ошибки. Ошибки только в данных, схема не нарушалась. Фрагмент файла с данными о накладных:

<u doc_number="ЯР00000732" create_date="2011-03-17T00:00:00" cn="ФИЛИАЛ СОАО &quot;БАХУС&quot; ЯРЦЕВСКИЙ" ci="6729004565" ck="672732001" rn="СОАО &quot;Бахус&quot;" ri="6729004565" rk="672950001">

<b EAN13="8000001187517" jn="СОАО &quot;Бахус&quot;" inn="6729004565" kpp="672901001" short_name="Водка &quot;Лейся песня&quot;" volume="0.2500" percent_alc="40.000" price="53.6000" count="1" />

<b EAN13="8000001187521" jn="СОАО &quot;Бахус&quot;" inn="6729004565" kpp="672901001" short_name="Водка ос.&quot;Бахус&quot;" volume="0.2500" percent_alc="40.000" price="53.6000" count="4" />

</u>

<u doc_number="ЮБА1226013" create_date="2012-12-26T00:00:00" cn="ООО &quot;ЮНАЙТЕД БОТТЛИНГ ГРУПП&quot;" ci="6952000100" ck="695201001" rn="ООО &quot;Перспектива&quot;" ri="4705044950" rk="502943001">

<b EAN13="0000002100561" jn="ООО &quot;ЮНАЙТЕД БОТТЛИНГ ГРУПП&quot;" inn="6952000100" kpp="695201001" short_name="Перфект. Ягуар Голд" volume="0.5000" percent_alc="7.000" price="38.0000" count="24192" />

</u>