49149

Проектирование информационных систем

Курсовая

Информатика, кибернетика и программирование

Преимущества использования системы: уменьшатся срок формирования регистров отчетности и отчета клиенту; расширяются возможности по получению информации в различных разрезах по площадкам стратегиям клиентам договорам ДУ; увеличивается скорость прохождения информации между специалистами компании; автоматизируется документооборот связанный со сделками с ценными бумагами. Система интегрирована с внешней системой LOISCpitlMrket для загрузки данных о сделках с ценными бумагами которые совершаются брокером на бирже. Отчёт Регистр...

Русский

2013-12-21

1.61 MB

4 чел.

Федеральное Агентство по образованию

Министерство образования и науки Российской Федерации

ГОУ ВПО Пермский государственный педагогический университет

Факультет информатики и экономики

Кафедра прикладной информатики

КУРСОВАЯ РАБОТА

Проектирование информационных систем

ИСПОЛНИТЕЛЬ: студентка гр.1243

О.Н. Чащухина

НАУЧНЫЕ РУКОВОДИТЕЛИ:

Ананьев С.А., Болотов В.Г.

Пермь 2007


Содержание


Введение

В настоящее время проектирование и разработка информационных систем (ИС) служит для рационального управления многими процессами на предприятии. ИС объединяют разные подсистемы в единое информационное пространство предприятия.

Одними из главных преимуществ автоматизированных ИС является снижение, вплоть до полного исключения, влияния так называемого человеческого фактора на управляемый процесс, минимизация расходов ресурсов, повышение качества выпускаемого продукта, и в конечном итоге - существенное повышение эффективности производства предприятия. Основные функции, выполняемые подобными системами, включают в себя контроль и управление, обмен данными, обработку, накопление и хранение информации, формирование графиков и отчётов.

Курсовая работа была выполнена в компании «ЛОИС», которая ведёт свою деятельность в отрасли информационных технологий. Она занимается разработкой индивидуальных решений, реализацией проектов по внедрению информационных систем и оказанием услуг поддержки ИС.

Целью курсовой работы является получение практических навыков в создании информационных систем. Для достижения данной цели необходимо решить задачу, связанную с формированием отчёта «Регистр внутреннего учёта сделок с ценными бумагами», которая включает в себя несколько этапов:

  1.  исследование предметной области;
  2.  построение информационной модели;
  3.  создание концептуальной модели;
  4.  проектирование интерфейса пользователя;
  5.  создание программного модуля и интегрирование его в систему.


Глава 1 Постановка проблемы

1.1 Исследование предметной области

Управляющая компания оказывает услуги доверительного управления клиентам. Компания совершает биржевые и внебиржевые операции по покупке/продаже ценных бумаг (ЦБ) через брокерскую компанию. Клиенты передают собственные активы в доверительное управление. Компания совершает операции с целью увеличения активов клиентов. Компания предоставляет клиентам оперативную отчётность о совершённых с активами операциях и состоянии активов.

Компания оказывает услуги доверительного управления:

  1.  корпоративным клиентам;
  2.  частным клиентам;
  3.  негосударственным пенсионным фондам (НПФ);
  4.  паевым инвестиционным фондам (ПИФ).

Компания совершает операции с собственными активами и также предоставляет оперативную отчётность о состоянии собственных активов компании акционерам и руководству. Руководство компании и акционеры оценивают эффективность работы компании по предоставленным отчётам.

Компания совершает биржевые и внебиржевые операции по покупке/продаже ценных бумаг через брокерскую компанию, которая предоставляет компании Заказчика отчёт о совершённых операциях. Брокерская компания ведёт учёт во внешней автоматизированной информационной системе «LOIS-CapitalMarket». Деятельность компании регламентируется законодательством и внутренними правилами компании, которые накладывает ограничения на порядок управления активами, на структуру активов и т.п.

Компания использует систему, предназначенную для автоматизации деятельности специалистов по учету Компании. Автоматизируются следующие бизнес-процессы, связанные с управлением активами клиентов Компании:

  1.  неторговые операции (гашение купонов или облигаций, ввод/вывод ценных бумаг);
  2.  сделки с ценными бумагами (учет сделок, совершенных брокером);
  3.  административные операций с ценными бумагами (операции конвертации, дробления ЦБ, слияния ЦБ);
  4.  движение денежных средств (учет денежных средств в оперативном учете при совершении сделок, вводе/выводе из договора доверительного управления);
  5.  формирование регистров учета;
  6.  ведение плана счетов (обработка сделок в оперативном учете, обработка иных движений активов);
  7.  формирование отчета клиенту;
  8.  формирование отчета о соответствии структуры портфелей клиентов стратегии (в отчете отражается текущее состояние портфеля, отклонение от стратегии).

Преимущества использования системы:

  1.  уменьшатся срок формирования регистров отчетности и отчета клиенту;
  2.  расширяются возможности по получению информации в различных разрезах (по площадкам, стратегиям, клиентам, договорам ДУ);
  3.  увеличивается скорость прохождения информации между специалистами компании;
  4.  автоматизируется документооборот, связанный со сделками с ценными бумагами.

 

1.2 Описание проблемы

В настоящий момент формирование отчётов выполняется вручную, что влечёт за собой ряд неудобств и накладывает ограничения на деятельность компании:

  1.  в связи с ручным способом построения отчётов процесс формирования отчётов не исключает возникновение ошибок в отчётах;
  2.  в связи с ручным способом построения отчётов для построения различных отчётов требуется одна и та же первичная информация, что приводит к дублированию затрат по её регистрации и обработке;
  3.  в связи с ручным способом построения отчётов процесс построения отчётов требует большого времени и имеет большую трудоёмкость;
  4.  в связи с ручным способом обработки информации процесс расчёта налогов, например НДФЛ, имеет большую трудоёмкость, что может привести к несвоевременному или неправильному определению налогов;
  5.  клиенты не имеют возможности оперативно получать отчёты о состоянии и изменении активов, не могут выполнить анализ структуры активов;
  6.  рост числа клиентов компании усугубит перечисленные выше проблемы;
  7.  компания не имеет возможности вести оперативный контроль структуры активов;
  8.  отсутствует возможность автоматического исполнения требований законодательства;
  9.  отсутствует автоматический контроль исполнения требований конечными исполнителями, что может привести к совершению ошибок при выполнении операций, связанных с изменением активов.

В рамках курсового проекта было предложено решить задачу, связанную с формированием отчёта «Регистр внутреннего учёта сделок с ценными бумагами», которая включает в себя несколько этапов:

  1.  создание концептуальной модели;
  2.  создание информационной модели;
  3.  проектирование интерфейса пользователя;
  4.  написание программного кода.

1.3 Концепция решения проблемы

Основу решения для достижения целей компании в рамках настоящего проекта составляет система финансового учёта – Система. Основная концепция состоит в следующем: Система обеспечивает формирование требуемых отчётов на основе зарегистрированной информации об операциях, связанных с изменением финансовых средств, находящихся под управлением компанией.

Пользователи Системы регистрируют все факты, связанные с изменением финансового состояния компании, в частности, изменения состояния активов – операции. Регистрация операций происходит в виде первичных документов. Документы содержат всю необходимую аналитическую и количественную информацию для формирования отчётов. Система автоматически регистрирует информацию в соответствии с настроенными правилами учёта.

В дальнейшем, Система автоматически формирует отчёты и предоставляет возможность анализа показателей отчётов. Пользователь может детализировать любой показатель отчёта до первоисточника – до первичного документа, повлиявшего на изменение (формирование) данного показателя.

Система интегрирована с внешними источниками информации через Интернет, например, для оперативного получения котировок. Система интегрирована с внешней системой «LOIS-CapitalMarket» для загрузки данных о сделках с ценными бумагами, которые совершаются брокером на бирже. Система интегрирована с другими системами, которые используются в компании Заказчика. За основу системы финансового учёта взята система финансового учёта «LOIS-Finance», разработанная компанией «ЛОИС».

Отчёт «Регистр внутреннего учёта сделок с ценными бумагами» показывает информацию о сделках, совершённых с ценными бумагами:

  •  №, дату и время совершения сделки;
  •  место совершения сделки (РТС, ММВБ, ФБСПб и т.д.);
  •  тип и вид сделки;
  •  наименование и код клиента, которому принадлежали или стали принадлежать ценные бумаги;
  •  вид ценной бумаги, их количество, эмитент, цену одной ЦБ;
  •  сумму в целом по сделке;
  •  валюту цены и валюту расчётов;
  •  плановую и фактическую даты перерегистрации ЦБ;
  •  плановую и фактическую даты оплаты по сделке.

Информация по внебиржевым сделкам для формирования отчёта берется из справочника «Сделки в УК» (рис. 1.), который заполняется сотрудниками исходя из первичных документов. Эту информацию при необходимости можно отредактировать.

Рис. 1. Справочник сделок

Информация по биржевым сделкам загружается из внешней системы «LOIS-CapitalMarket», и для изменения она доступна только брокерам. Затем она хранится в Системе и используется только для формирования отчётов и последующего анализа.


Глава 2 Решение проблемы

2.1 Создание концептуальной модели

Создание концептуальной модели является одним из необходимых этапов проектирования информационных систем. Концептуальная модель представляет собой понятия реального мира и соответствует представлениям пользователя. Для построения концептуальной модели необходимо выделить основные понятия и их атрибуты в исследуемой предметной области. Затем следует определить связи между понятиями.

Концептуальная модель внутреннего учёта ценных бумаг создана с помощью Microsoft Office Visio 2003, и полное её графическое отображение представлено на рис. 2.

Рис. 2. Концептуальная модель учёта сделок с ценными бумагами

В исследуемой предметной области можно выделить следующие понятия: договор, реквизит, сделка, документ, торговая площадка, внешняя система, инструмент.

Сделки бывают двух видов: биржевые и внебиржевые. Биржевая сделка совершается на торговой площадке. Торговая площадка является внешней системой по отношению к Системе.

Подтверждением того, что сделка совершена, является документ. В документе отражается перерегистрация ЦБ и оплата за ЦБ по сделке.

Предметом сделки является инструмент, под которым понимаются: пай ПИФ, акция и облигация.

Сделки осуществляются на основании договоров доверительного управления с клиентами. В договоре указывается клиент и исполнитель, их реквизиты: сторона, расчётный счёт, представитель стороны.

2.2 Создание информационной модели

Информационная модель представляет собой совокупность взаимосвязанных таблиц, данные которых отражают рассматриваемую предметную область. Информационная модель строится на основе концептуальной модели и является её детальным отражением. Данную модель программисты используют в качестве функционального теста при написании программного кода на языке программирования Java.

Правила, которые используются в информационной модели:

  1.  Отчет формируется за период по указанной управляющей компании.
  2.  Все сделки, совершаемые в УК, регистрируются в справочнике «Сделки в УК» пользователем.
  3.  События по сделкам группируются по видам: сделки по продаже или сделки по покупке.
  4.  Цена одной ценной бумаги вычисляется путём деления суммы сделки на количество купленных/проданных ЦБ.
  5.  Плановая дата оплаты по сделке указывается в документе, подтверждающем совершение сделки.
  6.  Оплата по сделке может быть частями.
  7.  Фактическая дата оплаты – это дата оплаты последней части суммы по сделке.

Информационная модель создается с помощью Microsoft Office Excel 2003. Реализация информационной модели представлена в приложении 1.

2.3 Проектирование интерфейса пользователя

Одним из принципов проектирования программного интерфейса является создание всех графических элементов в едином стиле. Задание подразумевает внесение дополнений в уже готовую систему, поэтому для удобства работы интерфейс пользователя должен быть выполнен в том же стиле.

Для получения отчёта о сделках с ценными бумагами необходимо задать параметры. Для этого необходимо спроектировать форму ввода входных параметров. Графическое изображение формы ввода представлено на рис. 3.

Рис. 3. Форма ввода параметров отчёта «Регистр внутреннего учёта

сделок с ценными бумагами»

Параметры, необходимые для формирования отчёта «Регистр внутреннего учёта сделок с ценными бумагами»:

  •  управляющая компания – указывается название УК (данный параметр является обязательным для заполнения);
  •  клиент – указывается клиент, по которому необходимо сформировать отчёт (данный параметр является необязательным для заполнения). При выборе клиента система отображает в справочнике только клиентов выбранной управляющей компании. В отчёте указываются только данные, относящиеся к указанному клиенту. Если клиент не был выбран, то формируется отчёт, в котором отображаются все сделки с ценными бумагами за указанный период;
  •  период – указывается начальная и конечная дата формирования отчёта (данный параметр является обязательным для заполнения).

Описание работы пользователя с Системой описано в Руководстве пользователя (приложение 2).

2.4 Реализация программного кода

Реализация программного кода осуществлялась на типовом языке Java, при этом использовались стандартные библиотеки и собственные разработки компании Лоис.

Для решения задачи были использованы следующие программные продукты и надстройки:

  1.  Графический интерфейс пользователя (Graphic User InterfaceGUI) содержит:

Низший уровень - SWT библиотека от IBM. Она представляет собой набор стандартных визуальных компонент: кнопки, меню, таблицы и т.д. Библиотека позволяет осуществлять элементарные действия над компонентами (компоновать, отражать на форме). Обработка действий выполняется операционной системой, что позволяет ускорить выполнение программы.

Надстройка JFace – содержит удобные для программиста интерфейсные методы, позволяющие работать непосредственно с данными.

Верхний уровень - интерфейс framework Lois SWTDesign. Этот визуальный компонент является собственной разработкой компании Лоис и представляет собой стандартный интерфейс, в который можно легко и быстро встраивать новые задачи – функциональные области.

Framework – это набор компонент, который позволяет легко и быстро встраиваться в визуальную среду.

  1.  Работа с базами данных осуществляется при помощи:
  2.  Oracle TopLink JDBC интерфейс – отображает Java-объекты на реляционные таблицы. Основные объекты TopLink:
  •  сессия – объект, с помощью которого можно записывать и считывать данные;
  •  ExpressionBuilder – построитель выражений;
  •  ExecuteQuery – генерирует SQL-запрос, выполняет и передаёт результат ReportQuery.
  1.  СУБД Oracle – многомерная база данных.

Каждый объект имеет свой программный модуль, например, время совершения сделки - ru.lois.date.Vrema.

Справочники хранятся в библиотеке - ru.lois.nsi.*. Для реализации программного кода используется несколько типов справочников, например, справочник акций - ru.lois.nsi.cenniebumagi.Akcia, справочник клиентов - ru.lois.nsi.klient.Klient, справочник сделок - ru.lois.nsi.sdelka.Sdelka и др.

  1.  Работа с отчетами Excel осуществляется при помощи библиотека XL Report, которая позволяет производить манипуляции с данными и передавать их в MS Office Excel. 

Реализация программного модуля для формирования отчёта «Регистр внутреннего учёта сделок с ценными бумагами» представлена в приложении 3.


Заключение

В результате написания курсовой работы в компании ЛОИС были закреплены пройденные в университете теоретические знания, приобретены практические навыки по проектированию и разработке информационных систем. Это было достигнуто путём решения задачи, связанной с формированием отчёта «Регистр внутреннего учёта сделок с ценными бумагами».

Данная задача была разбита на несколько подзадач:

  1.  исследование предметной области – ценные бумаги и увеличение активов при помощи совершения сделок с ними;
  2.  создание концептуальной модели – отражение предметной области при помощи понятий реального мира;
  3.  построение информационной модели – написание функционального теста для программистов-кодеров;
  4.  проектирование интерфейса пользователя – соблюдение единого стиля для удобства работы пользователя;
  5.  создание программного модуля и интегрирование его в систему – на языке Java и дополнительных надстроек и библиотек к нему.


Приложение 1 Руководство пользователя

Формирование отчета "Регистр внутреннего учёта сделок с ценными бумагами"

Описание применения

Управляющая компания принимает активы клиентов в доверительное управление.

Управляющая компания совершает биржевые и внебиржевые сделки по покупке/продаже ценных бумаг.

Сотрудники УК осуществляют ведение оперативного учёта в Системе - регистрируют в системе операции по движению ценных бумаг в соответствии с совершёнными сделками. При необходимости сотрудники УК формируют отчёт "Регистр внутреннего учёта сделок с ценными бумагами".

Для формирования отчёта «Регистр внутреннего учёта сделок с ценными бумагами» в Системе должны быть зарегистрированы операции по движению ценных бумаг в соответствии с совершенными сделками. Если сделки с ценными бумагами были совершены самой УК, то сотрудники УК регистрирует эти данные в Системе. Если же сделки были совершены брокерами на бирже, то данные по этим сделкам регистрируются брокерами во внешней системе LoisCapitalMarket, а уже из неё Система подгружает эти данные и обрабатывает их при нажатии на кнопку Импорт/Экспорт.

  1.  Регистрация параметров сделок с ценными бумагами

  1.  Начните работу со справочником сделок

Перейдите в группу задач «Справочники». На панели объектов выберите пункт «Сделки в УК». Система отобразит в рабочей области структуру зарегистрированных сделок (рис. 4.).

Рис. 4. Справочник сделок

  1.  Регистрация данных в справочнике сделок

Для формирования отчёта «Регистр внутреннего учёта сделок с ценными бумагами» в Системе должен быть заполнен справочник сделок. Пользователь регистрирует данные в справочнике сделок. Чтобы добавить новое значение в справочник, нажмите кнопку «Создать». Система откроет форму для регистрации параметров сделки (рис. 5.).

Рис. 5. Форма для регистрации параметров сделки

После заполнения всех обязательных параметров необходимо нажать кнопку «Сохранить».

  1.   Порядок формирования отчёта

Для формирования отчёта в системе должны быть зарегистрированы все сделки, которые совершаются с ценными бумагами.

  1.  Начните работу с выбора регистра учёта

Перейдите в группу задач «Отчёты». На панели объектов выберите пункт «Регистры учёта». Система отобразит в рабочей области виды регистров учёта. Затем выберите отчёт «Регистр внутреннего учёта сделок с ценными бумагами» (Рис. 6.).

Рис. 6. Выбор регистра учета

  1.  Введите параметры формирования отчета
  •  Выбор УК

Данный параметр является обязательным для заполнения. Нажмите кнопку . Появится окно, в котором указан перечень всех управляющих кампаний (Рис. 7.). Выберите название УК из списка и нажмите кнопку .

Рис. 7. Выбор УК

  •  Выбор клиента

Выберите клиента, по которому Вы хотите сформировать отчеты. Данный параметр является необязательным. При выборе клиента система отображает в справочнике только клиентов выбранной управляющей компании (Рис. 8.).

Рис. 8. Выбор клиента

  •  Выбор периода формирования отчёта

Укажите период формирования отчёта. Данный параметр является обязательным для заполнения. Введите начальную и конечную даты или выберите их при помощи календаря (кнопка ).

  1.  Сформируйте отчёт

Нажмите кнопку . Система сформирует выбранный отчёт и выведет их в MS Excel. Вы можете распечатать отчёт средствами MS Excel. Если клиент не был выбран, то формируется отчёт, в котором отображаются все сделки с ценными бумагами за конкретный период. Если клиент был выбран, то в отчёте указываются только данные, относящиеся к нему (Рис. 9.).

Рис. 9. Отчёт «Регистр внутреннего учёта сделок с ценными бумагами»


Приложение 2 Информационная модель

Таблица 1 Ценные бумаги

Таблица 2 Клиенты

Код

Краткое наименование

Договор ДУ

ЮЛ-14

Попов Анатолий Николаевич

ДУ 14-ЮЛ

ЮЛ-147

ДУ  MJBKL

ДУ 147-ЮЛ

ФЛ-1265

Суханов Игорь Игнатьевич

ДУ ФЗ-1265

ЮЛ-456

Евсеев Юрий Олегович

ДУ 456-ЮЛ

ЮЛ-956

Носкова Анна Васильевна

ДУ 956-ЮЛ

ЮЛ-102

ДУ  ЖУКОВ Г.И.

ДУ 102-ЮЛ


 Таблица 3 Сделки


Таблица 4 Отчёт «Регистр внутреннего учёта сделок с ценными бумагами»


Приложение 3 Программный код

package ru.lois.pm.lam.otceti.registrvnutrucetasdelok;

import java.math.BigInteger;

import java.util.ArrayList;

import java.util.Collections;

import java.util.Comparator;

import java.util.Date;

import java.util.Iterator;

import java.util.List;

import oracle.toplink.expressions.Expression;

import oracle.toplink.expressions.ExpressionBuilder;

import oracle.toplink.queryframework.ReadAllQuery;

import oracle.toplink.sessions.Session;

import ru.lois.Util.QBE.ExpressionUtils;

import ru.lois.bean.PreobrazovatelIdentificirovanih;

import ru.lois.date.LDate;

import ru.lois.date.Vrema;

import ru.lois.nsi.VidiOu;

import ru.lois.nsi.cenniebumagi.Akcia;

import ru.lois.nsi.cenniebumagi.VidInstrumenta;

import ru.lois.nsi.dogovor.DogovorDU;

import ru.lois.nsi.klient.Klient;

import ru.lois.nsi.sdelka.Sdelka;

import ru.lois.nsi.sdelka.SdelkaBean;

import ru.lois.nsi.sdelka.SdelkaFasad;

import ru.lois.nsi.sdelka.TipSdelki;

import ru.lois.nsi.sdelka.VidSdelki;

import ru.lois.ogranicenia.para.DatePair;

import ru.lois.pm.lam.otceti.ucetdensredstv.RegistriUcetaParametri;

import ru.lois.utilities.LCollections;

public class RegistrVnutrUcetaSdelok

{

   public List сформировать(RegistriUcetaParametri параметры, Session сессия)

   {

       ExpressionBuilder b = new ExpressionBuilder();

       Expression ограничение = b.get(Sdelka.АКТИВНО).equal(true);

       BigInteger[] клиенты = PreobrazovatelIdentificirovanih.преобрразовать(параметры.getКлиенты());

       if (параметры.период != null && параметры.период.getKonecPerioda() != null

               && параметры.период.getNacaloPerioda() != null)

       {

           Expression ограничениеНаПериод = ExpressionUtils.сПо(b.get(Sdelka.ДАТА),

                   new DatePair(параметры.период.getNacaloPerioda(),

                           LDate.получитьКонецДня(параметры.период.getKonecPerioda())));

           ограничение = ограничение.and(ограничениеНаПериод);

       }

       if (!LCollections.isПусто(клиенты))

       {

           Expression ограничениеПоКлиентам = b.get(Sdelka.ДОГОВОР_ДУ)

                   .get(DogovorDU.КЛИЕНТ_ДОГОВОРА)

                   .get(Klient.ID)

                   .in(клиенты);

           ограничение = ограничение.and(ограничениеПоКлиентам);

       }

       ReadAllQuery query = new ReadAllQuery(Sdelka.class, ограничение);

       List сделки = (List) сессия.executeQuery(query);

       List строки = new ArrayList();

       for (Iterator iter = сделки.iterator(); iter.hasNext();)

       {

           Sdelka сделка = (Sdelka) iter.next();

           if (!LDate.содержитВремя(сделка.getДата()))

               сделка.setДата(LDate.установиВремя(сделка.getДата(), new Vrema(0, 0)));

           строки.add(new StrokaOtchetaSdelok(сделка.getИдентификатор(),

                   сделка.getДата(),

                   сделка.getМестоСовершения() != null ? сделка.getМестоСовершения().getНазвание()

                           : "",

                   сделка.getДоговорДУ() != null ? сделка.getДоговорДУ()

                           .getКлиентДоговора()

                           .getСубъект()

                           .getИдентификатор() : "",

                   сделка.getДоговорДУ() != null ? сделка.getДоговорДУ()

                           .getКлиентДоговора()

                           .getКод() : "",

                   сформироватьЗаписку(сделка),

                   сделка.getСторона() != null ? сделка.getСторона().getИдентификатор() : "",

                   понятьТипСделки(сделка),

                   сделка.getДоговорДУ() != null ? сделка.getДоговорДУ().getНомер() : "",

                   (сделка.getВидСделки() != null)

                           || (!сделка.getВидСделки().equals(VidSdelki.НЕ_ОПРЕДЕЛЕН)) ? сделка.getВидСделки()

                           .getНазвание()

                           : "",

                   сделка.getПредмет() != null ? сделка.getПредмет().getЭмитент().getНазвание()

                           : "",

                   определитьВидЦБ(сделка),

                   сделка.getКоличество(),

                   сделка.getЦенаЦБ() != null ? сделка.getЦенаЦБ().getSumma() : null,

                   сделка.getСуммаСделки() != null ? сделка.getСуммаСделки().getSumma() : null,

                   сделка.getЦенаЦБ() != null ? сделка.getЦенаЦБ().getValuta().getНазвание() : "",

                   сделка.getСуммаСделки() != null ? сделка.getСуммаСделки()

                           .getValuta()

                           .getНазвание() : "",

                   сделка.getСтавкаРЕПО(),

                   сделка.getТип().equals(TipSdelki.СОБСТВЕННАЯ_ВНЕБИРЖЕВАЯ) ? сделка.getПланДатаПеререгистрации()

                           : null,

                   сделка.getТип().equals(TipSdelki.СОБСТВЕННАЯ_ВНЕБИРЖЕВАЯ) ? сделка.getПланДатаОплаты()

                           : null,

                   сделка.getТип().equals(TipSdelki.СОБСТВЕННАЯ_ВНЕБИРЖЕВАЯ) ? оперделитьФактДатуПеререгистрации(сделка,

                           сессия)

                           : null,

                   сделка.getТип().equals(TipSdelki.СОБСТВЕННАЯ_ВНЕБИРЖЕВАЯ) ? оперделитьФактДатуОплаты(сделка,

                           сессия)

                           : null));

       }

       Collections.sort(строки, new Comparator()

       {

           public int compare(Object o1, Object o2)

           {

               StrokaOtchetaSdelok первый = (StrokaOtchetaSdelok) o1;

               StrokaOtchetaSdelok второй = (StrokaOtchetaSdelok) o2;

               return (LDate.formatДляСортировкиПоСтроке(первый.getДата()) + "|" + первый.getНомер()).compareTo(LDate.formatДляСортировкиПоСтроке(второй.getДата())

                       + "|" + второй.getНомер());

           }

       });

       return строки;

   }

   private Date оперделитьФактДатуПеререгистрации(Sdelka сделка, Session сессия)

   {

       if (сделка.getТип().equals(TipSdelki.НЕ_ОПРЕДЕЛЕН))

           return null;

       if (сделка.getТип().equals(TipSdelki.БРОКЕРСКАЯ_БИРЖЕВАЯ))

           return сделка.getПланДатаПеререгистрации();

       SdelkaFasad фасад = new SdelkaFasad();

       фасад.узнатьФактическуюДатуПеререгистрации((SdelkaBean) фасад.создатьБин(сделка), сессия);

       return фасад.getДата();

   }

   private Date оперделитьФактДатуОплаты(Sdelka сделка, Session сессия)

   {

       if (сделка.getТип().equals(TipSdelki.НЕ_ОПРЕДЕЛЕН))

           return null;

       if (сделка.getТип().equals(TipSdelki.БРОКЕРСКАЯ_БИРЖЕВАЯ))

           return сделка.getПланДатаОплаты();

       SdelkaFasad фасад = new SdelkaFasad();

       return фасад.расчетФактическойДаты((SdelkaBean) фасад.создатьБин(сделка), сессия);

   }

   private String сформироватьЗаписку(Sdelka сделка)

   {

       if (сделка.getТип().equals(TipSdelki.БРОКЕРСКАЯ_БИРЖЕВАЯ))

           return "б/н от " + LDate.format(LDate.получитьСледующийРабочийДень(сделка.getДата()));

       if (!сделка.getТип().equals(TipSdelki.НЕ_ОПРЕДЕЛЕН))

           return сделка.getИдентификатор() + " от " + LDate.format(сделка.getДата());

       return "";

   }

   private String понятьТипСделки(Sdelka сделка)

   {

       if (сделка.getТип().equals(TipSdelki.БРОКЕРСКАЯ_БИРЖЕВАЯ))

           return сделка.getТип().getНазвание().toLowerCase();

       if (!сделка.getТип().equals(TipSdelki.НЕ_ОПРЕДЕЛЕН))

           return "Во исполнение договора ДУ";

       return "";

   }

   private String определитьВидЦБ(Sdelka сделка)

   {

       if (сделка.getПредмет() == null)

           return "";

       if (сделка.getПредмет().getВидОу().equals(VidiOu.АКЦИЯ))

           return ((Akcia) сделка.getПредмет()).getВидИнструмента().getНазвание().toLowerCase();

       if (сделка.getПредмет().getВидОу().equals(VidiOu.ОБЛИГАЦИЯ))

           return VidInstrumenta.ОБЛИГАЦИИ.getНазвание().toLowerCase();

       return VidInstrumenta.ВЕКСЕЛЬ.getНазвание().toLowerCase();

   }

}


Наименование ЦБ

Эмитент

Вид ЦБ

Вид акции

Вид ЦБ в отчете

Синергия, ао

Синергия

акция

обыкновенная

акции обыкновенные

МКБ, ао

МКБ

акция

обыкновенная

акции обыкновенные

КАМДОЛ1, о

КАМДОЛ1

облигация

 

облигации

Пермская ГЭС, ао

Пермская ГЭС

акция

обыкновенная

акции обыкновенные

КАМДОЛ2, о

КАМДОЛ2

облигация

 

облигации

Пересвет, ао

Пересвет

акция

обыкновенная

акции обыкновенные


 

А также другие работы, которые могут Вас заинтересовать

49616. Расчет релейной защиты элемента электроэнергетической сети 662 KB
  Чебоксары 2009 год Задание Выполнить расчет релейной защиты элемента электроэнергетической сети: выбрать тип и основные параметры элемента защиты марка провода тип опор длина схему прилегающей сети и режим его работы; рассчитать основную или резервную защиту элемента сети: рассчитать схему замещения элемента сети; выбрать реле защиты и схему его включения; рассчитать основные режимы короткого замыкания; рассчитать уставки защиты; выполнить расчет чувствительности защиты; сделать выводы по расчету; нарисовать схему...
49617. Проектирование районной электрической сети 3.19 MB
  В данной работе проводится учебное проектирование электрической сети питающей 6 пунктов и имеющей один источник питания также выявляется необходимость реактирования линий 10 кВ отходящих от подстанции. В первом разделе работы проводится анализ исходных данных и устанавливаются батареи статических конденсаторов БСК в соответствие с требованиями приказа Минэнерго от 20022007 №49 в следующем разделе формируются варианты сети и выбираются номинальные напряжения участков схем сети. Проводится сопоставление вариантов...
49618. Расчет механизмов привода растворонасоса 448.1 KB
  Выбираем для изготовления колеса и шестерни сталь марки 40Х. Дополнительно применяем улучшение получая твердость 235…262 HB для колеса и 269…302 HB для шестерни.
49621. Теорія будови Бутлерова як основа вивчення органічної хімії в школі 1.24 MB
  ФРАНКА ХІМІЧНИЙ ФАКУЛЬТЕТ Кафедра педагогіки Кафедра неорганічної хімії Теорія будови Бутлерова як основа вивчення органічної хімії в школі Курсова робота студента 4 курсу Яворського Богдана Володимировича...
49622. Дискретная обработка сигналов и цифровая фильтрация 447.89 KB
  Рассчитать и построить спектральные характеристики аналогового сигнала. Рассчитать прохождение сигнала через цепь операторный или временной метод Дискретная обработка аналогового сигнала. Спектральный анализ аналогового сигнала
49624. Розрахунки ділянки тепловозною тягою за одним варіантом ведення поїзда 1.57 MB
  Тяга поїздів – це галузева наука яка вивчає керований рух поїздів тобто такий рух що дозволяє досягти поставленої перед залізничним транспортом мети – повного та своєчасного забезпечення народного господарства у перевезеннях при безпеці цих перевезень та надійній роботі локомотивів. Таблиця 51 № елемента Довжина елемента Крутість Початкова швидкість Питома рівнодійна сила Відрізок шляху Швидкість кінцев...