OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 12 Ноябрь, 2019 07:33

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 96 ]  На страницу Пред.  1, 2, 3, 4, 5  След.
Автор Сообщение
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 14:38 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2932
Откуда: г. Ярославль
Не, такое мне ни в жисть не воспроизвести :) Но код приведу:

Код:
browseQuery = "SELECT fNoPay, fOnlyTeacher, fChecked, ct.order1, ct.date1, ct.time1, ct.LectureHours, ct.PracticalHours, ct.GrConsHours, ct.ExamHours, themes.name, CONCAT_WS(' ', t.surname, t.name, t.patronymic), ct.subgroup FROM coursethemes AS ct, themes, teachers AS t WHERE ct.idCourse=:IroCourseThemes.brw.idCourse AND themes.id=ct.idTheme AND t.id=idTeacher ORDER BY ct.order1";

      changeQuery = "SELECT ct.IDTheme, ct.IDTeacher, ct.Order1, ct.Date1, ct.Time1, ct.LectureHours, ct.PracticalHours, ct.GrConsHours, ct.ExamHours, ct.FChecked, ct.FNoPay, ct.FOnlyTeacher, themes.name, CONCAT_WS(' ', t.Surname, t.Name, t.Patronymic), ct.subgroup FROM coursethemes AS ct LEFT JOIN themes ON themes.id=ct.IDTheme LEFT JOIN teachers AS t ON t.ID=ct.IDTeacher WHERE ct.idCourse=:IroCourseThemes.brw.idCourse AND ct.order1=:IroCourseThemes.selected.order1";

      updateQuery = "UPDATE coursethemes SET IDTeacher=:IroCourseThemes.frm.rec.idTeacher, IDTheme=:IroCourseThemes.frm.rec.idTheme, Date1=:IroCourseThemes.frm.rec.date1, Time1=:IroCourseThemes.frm.rec.time1, LectureHours=:IroCourseThemes.frm.rec.l, PracticalHours=:IroCourseThemes.frm.rec.p, GrConsHours=:IroCourseThemes.frm.rec.g, ExamHours=:IroCourseThemes.frm.rec.e, FChecked=:IroCourseThemes.frm.rec.fChecked, FNoPay=:IroCourseThemes.frm.rec.fNoPay, FOnlyTeacher=:IroCourseThemes.frm.rec.fOnlyTeacher, subgroup=:IroCourseThemes.frm.rec.subgroup WHERE idCourse=:IroCourseThemes.brw.idCourse AND order1=:IroCourseThemes.frm.rec.order1";

      deleteQuery = "DELETE FROM coursethemes WHERE idCourse=:IroCourseThemes.brw.idCourse AND order1=:IroCourseThemes.selected.order1";

      insertQuery = "INSERT INTO coursethemes SET idCourse=:IroCourseThemes.brw.idCourse, idTheme=:IroCourseThemes.frm.rec.idTheme, idTeacher=:IroCourseThemes.frm.rec.idTeacher, order1=:IroCourseThemes.frm.rec.order1, date1=:IroCourseThemes.frm.rec.date1,       time1=:IroCourseThemes.frm.rec.time1, LectureHours=:IroCourseThemes.frm.rec.l, PracticalHours=:IroCourseThemes.frm.rec.p, fChecked=:IroCourseThemes.frm.rec.fChecked, fNoPay=:IroCourseThemes.frm.rec.fNoPay, fOnlyTeacher=:IroCourseThemes.frm.rec.fOnlyTeacher,       GrConsHours=:IroCourseThemes.frm.rec.g, ExamHours=:IroCourseThemes.frm.rec.e, subgroup=:IroCourseThemes.frm.rec.subgroup";

      checkQuery = "UPDATE coursethemes SET FChecked=1 WHERE idCourse=:IroCourseThemes.brw.idCourse AND order1=:IroCourseThemes.selected.order1";

      uncheckQuery = "UPDATE coursethemes SET FChecked=0 WHERE idCourse=:IroCourseThemes.brw.idCourse AND order1=:IroCourseThemes.selected.order1";

      checkAllQuery = "UPDATE coursethemes SET FChecked=1 WHERE idCourse=:IroCourseThemes.brw.idCourse";

      uncheckAllQuery = "UPDATE coursethemes SET FChecked=0 WHERE idCourse=:IroCourseThemes.brw.idCourse";

      browseCols = 11; (* кол-во столбцов в таблице браузера *)
      lightGreen = 14608588;
      lightBlue = 14608588;
      
      wrongDateCol = 2;
      dateCol = 2;
      timeCol = 3;
      hrsCol = 9;
      settingsBrwThemes* = 'brwthm'; (* экспорт для IroCourses, hook, OnCloseCommon *)
      
   TYPE
      BrowseRec = RECORD
         fNoPay*: INTEGER;
         fOnlyTeacher*: INTEGER;
         fChecked*: INTEGER;
         order1*: INTEGER;
         date1*: Dates.Date;
         time1*: INTEGER; (* кларионовский формат времени - кол-во 1/100 сек с полуночи. *)
         l*, p*, g*, e*: INTEGER;
         themeName*: ARRAY 250 OF CHAR;
         fio*: ARRAY 50 OF CHAR; (* фио преподавателя *)
         subgroup*: INTEGER; (* 06.02.2009 15:26:18 номер подгруппы *)
      END;

      FormRec = RECORD
         idTheme*: INTEGER;
         idTeacher*: INTEGER;
         order1*: INTEGER;
         date1*: Dates.Date;
         time1*: INTEGER; (* кларионовский формат времени - кол-во 1/100 сек с полуночи. *)
         l*, p*, g*, e*: INTEGER;
         fChecked*: INTEGER;
         fNoPay*: INTEGER;
         fOnlyTeacher*: INTEGER;
         themeName*: ARRAY 250 OF CHAR;
         fio*: ARRAY 50 OF CHAR; (* фио преподавателя *)
         subgroup*: INTEGER; (* 06.02.2009 15:26:18 номер подгруппы *)
      END;

      CourseThemeRec = RECORD
         fChecked*: INTEGER;
         fOnlyTeacher*: INTEGER;
         order1*: INTEGER;
         date1*: Dates.Date;
         time1*: INTEGER; (* кларионовский формат времени - кол-во 1/100 сек с полуночи. *)
         l*, p*, g*, e*: INTEGER;
         themeName*: ARRAY 256 OF CHAR;
         fio*: ARRAY 50 OF CHAR; (* фио преподавателя *)
         subgroup*: INTEGER; (* 06.02.2009 15:26:18 номер подгруппы *)
      END;

      OrderRec = RECORD
         order1*: INTEGER;
         fChecked*: INTEGER;
      END;

      MaxOrderRec = RECORD
         order1*: INTEGER;
      END;

      (* Свойство, размещаемое в ячейке для хранения идентификатора записи *)
      IdProp = POINTER TO RECORD order1, fChecked: INTEGER END;

      SearchTeacherHook = POINTER TO RECORD (IroTeachers.SearchHook) END;
      SearchThemeHook = POINTER TO RECORD (IroThemes.SearchHook) END;

      (* 06.12.2008 13:32:07 Иван Реализация вытаскивания занятий курса *)
      CourseTheme* = POINTER TO RECORD
         course*: INTEGER;
         order1*: INTEGER;
      END;

      DragDrop = POINTER TO RECORD (GridTables.DragDrop) END;
      DragData = POINTER TO RECORD ct: CourseTheme END;

      Pause = POINTER TO RECORD (Services.Action)
         on: BOOLEAN;
      END;

      UpdateHook = POINTER TO RECORD (IroForms.FormHook) END;
      InsertHook = POINTER TO RECORD (IroForms.FormHook) END;

      CurDates = RECORD
         startDate*, endDate*: Dates.Date
      END;

      (* 07.05.2009 11:08:44 "Подгруппа" здесь - это занятие, проходящее в одно и то же время с остальными. *)
      Subgroup = POINTER TO RECORD (ListsCollection.Item)
         date: Dates.Date;
         time: INTEGER;
         hours: INTEGER;
         row: INTEGER;
         n: BYTE (* количество найденных подгрупп данной темы (тема тут тоже как бы условная, не всегда темы одинаковые) *)
      END;

      Finder = RECORD (ListsCollection.Comparator)
         date: Dates.Date;
         time: INTEGER;
         row: INTEGER;
      END;
      Colorator = RECORD (ListsCollection.Action)
         t: IroSys.Table
      END;

      ThmBrowse = POINTER TO RECORD (IroForms.Browse) END;

   VAR
      (* свойства для выравнивания содержимого ячеек *)
      lpCenter, lpLeft, lpRight: GridProps.LabelProp;

      iconSel, iconNotSel: GridCells.Bitmap;   

      (* интерактор браузера *)
      brw*: RECORD
         browse: ThmBrowse;
         idCourse*: INTEGER;
         rec: BrowseRec;
         t*: GridTables.Table;
         dates: CurDates;
         (* 05.06.2009 11:46:33 работа с подгруппами *)
         finder: Finder;
         colorator: Colorator;
         subgroups: ListsCollection.Iterable;
      END;
      
      (* структура для хранения идентификатора записи, выбранной пользователем в таблице *)
      selected*: RECORD
         order1*: INTEGER;
         fChecked*: INTEGER
      END;

      frm*: RECORD
         rec*: FormRec;
         noPay*, onlyTeacher*: BOOLEAN;
         total*: INTEGER;
         restoreFromPrevInsert*: BOOLEAN;
         saveIdTeacher*: INTEGER;
         saveDate1*: Dates.Date;
         time*: Dates.Time;
         pause: Pause;
         blanks*: Dialog.List; (* 22.01.2009 11:42:56 печать бланков\документов по списку занятий *)
      END;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 14:42 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
А запросы вы принципиально не форматируете?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 14:47 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2932
Откуда: г. Ярославль
ilovb писал(а):
А запросы вы принципиально не форматируете?


Запросы сперва отлаживаются в SQLYog, а потом переносятся в сырец. Форматирование вообще не критично. Дальнейшие мелкие изменения внести нет проблем.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 14:50 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Я правда не совсем понял зачем вы код привели. Как выглядит CP тут все знают. Если для сравнения, то не совсем это корректно. (предметные области разные)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 14:51 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2932
Откуда: г. Ярославль
ilovb писал(а):
Я правда не совсем понял зачем вы код привели. Как выглядит CP тут все знают. Если для сравнения, то не совсем это корректно. (предметные области разные)


Вы, возможно, будете удивлены, но у нас все сырцы, из разных областей, на КП выглядят одинаково и примерно так, как я показал.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 14:54 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
"Разные области" - это не зарплата с бух. учетом. Так?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 15:10 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2932
Откуда: г. Ярославль
ilovb писал(а):
"Разные области" - это не зарплата с бух. учетом. Так?


Ну, я представляю себе, что такое зарплата на предприятии. Было дело, на FoxPro. Сейчас такого нет, бухгалтерия сидит себе на 1С, и хорошо :) Ну а вас же язык 4GL, заточенный под предметную область, так ведь?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 15:18 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Не знаю что, за 4GL. Встроенный язык платформы 1С делали на основе вижул бэйсика. На предметную область ориентирован не язык а платформа (то бишь фреймворк по бусурмански) :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 15:31 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Насчет сравнения....
Приведите названия переменных на CP для базовых видов начислений:

ОплатаБЛПоТравмеВБыту
ДниНеоплачиваемыеСогласноТабелю
ДоплатаЗаВечерниеЧасы
ДоплатаЗаНочныеЧасы
ДоплатаЗаПраздничныеИВыходные
ДоплатаПоСреднемуБЛ
ОтпускБезОплатыУчебный
ОкладПоДням
ОкладПоЧасам
ОплатаБЛПоТравмеНаПроизводстве
ОплатаПоСреднемуБЛ
ОплатаВыходныхДнейПоУходуЗаДетьмиИнвалидами
ОплатаПоСреднемуОтпКалендарныеДни
ОплатаПоСреднемуОтпШестидневка
ТарифДневной
СдельнаяОплата
ОплатаПоСреднему
ТарифЧасовой
ПочасовойПростойОкладПоЧасам
ПочасовойПростойТарифЧасовой
ОплатаПраздничныхИВыходных
ПростойОкладПоДням
ПростойОкладПоЧасам
ПростойТарифДневной
ПростойТарифЧасовой
ОплатаСверхурочных
ОтпускБезОплатыПоТКРФ
ОтпускЗаСвойСчет
ОтпускПоБеременностиИРодам
ОтпускПоУходуЗаРебенкомБезОплаты
ОтсутствиеПоБолезни
ОтсутствиеПоБолезниПоБеременности
Невыход
ПособиеПоУходуЗаРебенкомДо1_5Лет
ПособиеПоУходуЗаРебенкомДо3Лет
ПочасовойПростойПоВинеРаботодателя
Прогул
ПростойПоВинеРаботодателя
РайонныйКоэффициент
СевернаяНадбавка

Я не думаю, что это будет коротко, красиво и понятно на CP.
Это я к тому, что если вы будете писать на CP зарплату, то код будет выглядеть практически также, как я приводил.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 16:08 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2932
Откуда: г. Ярославль
Боюсь, у переменных в 1С и в КП будет разная онтология и называться они, следовательно, будут по-разному. Например, ОплатаБЛПоТравмеВБыту - это что? Список, класс, ещё какая абстракция?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 16:30 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Это экземпляр некоторого класса. И к тому же элемент некоторой коллекции.

В справке этот тип описывается так:
Цитата:
ПланВидовРасчетаСсылка.<Имя плана видов расчета> (ChartOfCalculationTypesRef.<Имя плана видов расчета>)
Свойства:

<Имя реквизита> (<Attribute name>)
<Имя табличной части> (<Tabular section name>)
БазовыеВидыРасчета (BaseCalculationTypes)
ВедущиеВидыРасчета (LeadingCalculationTypes)
ВерсияДанных (DataVersion)
ВытесняющиеВидыРасчета (DisplacingCalculationTypes)
Код (Code)
Наименование (Description)
ПериодДействияБазовый (ActionPeriodIsBasic)
ПометкаУдаления (DeletionMark)
Предопределенный (Predefined)
Ссылка (Ref)

Методы:

Метаданные (Metadata)
ПолучитьОбъект (GetObject)
ПолучитьФорму (GetForm)
Пустая (IsEmpty)
Скопировать (Copy)
УникальныйИдентификатор (UUID)

Конструкторы:

Основной

Описание:

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

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Возможен обмен с сервером. Сериализуется. Данный объект может быть сериализован в/из XML. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен {http://v8.1c.ru/8.1/data/enterprise/current-config}. Имя типа XDTO: ChartOfCalculationTypesRef.<Имя плана видов расчета>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 16:34 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
Обращение к элементу коллекции вот так например:
Цитата:
ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ДоплатаЗаНочныеЧасы


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 16:42 

Зарегистрирован: Вторник, 30 Июнь, 2009 14:58
Сообщения: 1549
О, кстати!
Все предопределенные объекты платформы имеют как русскоязычное так и англоязычное написание.
Вот например:

Цитата:
ПланВидовРасчетаСсылка - ChartOfCalculationTypesRef


Выглядит так же сложно по-моему... :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 18:17 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3108
Откуда: Астрахань
Илья Ермаков писал(а):
Андрей писал(а):
Кажется, студия тоже расширяема. Конечно, не так просто, как бб, но всё же. Выносим расширяемость за скобки, и сравниваем.


А почему выносим? Вот, например, оставим аудиторию учителей (продвинутых) и преподавателей (массового пошиба, не профессионалов из индустрии). Для этой аудитории ББ, однозначно, расширяем (например, как расширена Школьная сборка И21). А Студия, однозначно, нет (не по силам).

Напомню, что только в 10-й студии появилась возможность расширения на языке программирования C#.
Что в ББ было изначально и на 15 лет раньше.
Кроме того, Додиез по сравнению с Компонентным паскалем - это, конечно, динозавр по сравнению с бобром... :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Вторник, 20 Сентябрь, 2011 22:23 
Аватара пользователя

Зарегистрирован: Суббота, 12 Июль, 2008 22:49
Сообщения: 573
Откуда: Россия, Санкт-Петербург
Интересно, а почему всё время сравнивают студию с ББ. Возьмите, например, Eclipse. Вот уж расширяемая вещь. Тут и модули и плагины и расширения и чего только нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Среда, 21 Сентябрь, 2011 01:27 

Зарегистрирован: Вторник, 29 Август, 2006 12:32
Сообщения: 2625
Откуда: Россия, Ярославль
для капиталиста абсолютно всё равно, как тут недавно сказали - свои самолёты не нужны, если они убыточны, лучше покупать чужие. какая разница, отдаёшь деньги - получаешь самолёты.
а вот для того, чтобы капиталисту обосновать необходимость "своего", тем более в мире программных, нематериальных продуктов, уже нужно иметь нечто более весомое, нежели всякие категорические императивы. а единственная весомая вещь для капиталосуществ (людьми их лучше не называть, вообщем-то, для сохранения связи с реальностью)- прибыль, которую, очевидно, притягивает к себе именно широкий набор готового, чтобы рубить бабло быстрее и эффективнее.
то есть, либо капитализм, либо императивы, терциум нон датур, типа того))
кризис рассудит, короче.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Среда, 21 Сентябрь, 2011 12:47 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8196
Откуда: Троицк, Москва
Madzi писал(а):
Eclipse. Вот уж расширяемая вещь. Тут и модули и плагины и расширения и чего только нет.
Сложно.
Кстати, я слышал нелестные о нем отзывы в образовательном контексте, мол, глючный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Среда, 21 Сентябрь, 2011 14:34 

Зарегистрирован: Среда, 22 Февраль, 2006 10:35
Сообщения: 144
Откуда: Новочеркасск
Подумалось: автодополнение для целей образования вредно!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Среда, 21 Сентябрь, 2011 15:13 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8196
Откуда: Троицк, Москва
Андрей писал(а):
Подумалось: автодополнение для целей образования вредно!
Теперь пойдите в класс и проверьте на детях.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Впечатления от майнстрима
СообщениеДобавлено: Среда, 21 Сентябрь, 2011 18:10 

Зарегистрирован: Среда, 22 Февраль, 2006 10:35
Сообщения: 144
Откуда: Новочеркасск
Info21 писал(а):
Теперь пойдите в класс и проверьте на детях.

Не моё :( . А что говорит ваш опыт?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 96 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB