Re: Ваши последние 20 строк кода
От: Eugeny__ Украина  
Дата: 18.03.05 10:37
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Просто ради интереса — кто чего делает. 20 строк, надеюсь коммерческой тайны не составляют


public void pullTables() {
            LoadingStatus status = new LoadingStatus();
            try {                
                status.Text = "Загрузка таблиц";
                status.addTask("closeconn", 6, "Загрузка текущего соединения");
                status.addTask("price", 50, "Загрузка таблицы номенклатур");
                status.addTask("options", 30, "Загрузка таблицы опций");
                status.addTask("clients", 20, "Загрузка таблицы клиентов");
                status.addTask("clientavgorder", 60, "Загрузка таблицы средних заказов");
                status.addTask("passwords", 5, "Загрузка таблицы паролей");
                status.addTask("routes", 13, "Загрузка таблицы маршрутов");
                status.addTask("orders", 5, "Загрузка таблицы заказов");
                status.addTask("order_items", 6, "Загрузка таблицы элементов заказов");
                status.addTask("pricecategories", 45, "Загрузка таблицы цен");
                status.Show();
                status.startTask("closeconn");
                this.connection.Close();
                string rdaOleDbConnectString = "Provider=SQLOLEDB; Data Source="+serverName+";Initial Catalog="+serverDBName+"; " +
                    "User Id="+serverLogin+";Password="+serverPassword; 
                SqlCeRemoteDataAccess acc = new SqlCeRemoteDataAccess();
                acc.InternetUrl = "http://" + serverName + "/mag/sscesa20.dll";
                acc.LocalConnectionString = "Data Source=" + dbLocation + ";password=" + dbPassword;
                status.startTask("price");
                acc.Pull("price", "select * from price where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("options");
                acc.Pull("options", "select * from options where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("clients");
                acc.Pull("clients", "select * from clients where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("clientavgorder");
                acc.Pull("clientavgorder", "select * from clientavgorder where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("passwords");
                acc.Pull("passwords", "select * from passwords where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("routes");
                acc.Pull("routes", "select * from routes where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("orders");
                acc.Pull("orders", "select * from orders where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("order_items");
                acc.Pull("order_items", "select * from order_items where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.startTask("pricecategories");
                acc.Pull("pricecategories", "select * from pricecategories where pda = '" + Dns.GetHostName() + "'", rdaOleDbConnectString, RdaTrackOption.TrackingOn);
                status.Close();
                status.Dispose();
            } catch (Exception e) {
                logger.Logger.log(this.GetType(), e);;
                MessageBox.Show("Не удалось загрузить таблицы. Проверьте правильность введенных параметров и наличие связи с сервером.");
                status.Close();
                status.Dispose();
            }
        }
... << RSDN@Home 1.1.3 stable >> Winamp: Marilyn Manson — This is the new shit
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Re: Ваши последние 20 строк кода
От: BkmzBIN Беларусь  
Дата: 18.03.05 10:57
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Просто ради интереса — кто чего делает. 20 строк, надеюсь коммерческой тайны не составляют


Н>
Н>        class XmlContainerSerializer
Н>        {
Н>        public:
Н>            //
Н>            // Serializes container
Н>            template <typename Container>
Н>            static MSXML2::IXMLDOMElementPtr Serialize(const MSXML2::IXMLDOMDocument2Ptr &xmlDocument,
Н>                const Container &container, long lItems, const CString &strElementName)
Н>            {
Н>                MSXML2::IXMLDOMElementPtr xmlElement = xmlDocument->createElement((LPCTSTR)strElementName);
Н>                for(long lItem = 0; lItem < lItems; ++lItem)
Н>                    xmlElement->appendChild(container[lItem].Serialize(xmlDocument));

Н>                return xmlElement;
Н>            }

Н>            //
Н>            // Deserializes container. strXPath is the XPath expression
Н>            // which selects root node
Н>            template <typename Container, typename Type>
Н>            static void Deserialize(const MSXML2::IXMLDOMElementPtr &xmlElement, Container &container,
Н>
Re[2]: Ваши последние 20 строк кода
От: BkmzBIN Беларусь  
Дата: 18.03.05 11:03
Оценка:
Упс...
    PROCEDURE update_by_rowid(pi_kpk    IN ent.kpk%TYPE,
                              pi_name   IN ent.NAME%TYPE,
                              pi_kpckeo IN ent.kpckeo%TYPE,
                              pi_rowid  IN ROWID) AS
        err VARCHAR2(512);
    BEGIN
        SAVEPOINT sp; -- точка восстановления
    
        -- пробуем обновить данные
        UPDATE ent
           SET kpk = pi_kpk, NAME = pi_name, kpckeo = pi_kpckeo
         WHERE ROWID = pi_rowid;
    
        COMMIT;
    EXCEPTION
        -- если КПК уже есть
        WHEN dup_val_on_index THEN
            -- откат
            ROLLBACK TO sp;
        
            -- получаем кем он занят и выводим сообщение
            SELECT 'Введённый КПК - ' || pi_kpk || ' уже занят для "' || NAME || '"'
              INTO err
              FROM ent
             WHERE kpk = pi_kpk;
        
            raise_application_error(-20005, err);
        WHEN OTHERS THEN
            -- откат
            ROLLBACK TO sp;
            RAISE;
    END;
Re[4]: Ваши последние 20 строк кода
От: ozone.km Россия  
Дата: 18.03.05 12:47
Оценка:
Здравствуйте, Рома Мик, Вы писали:

OK>>Это что за язык?

РМ>Похоже на паскаль, я правда давно паскаля не видал...
Я тоже с начала подумал паскаль, а потом присмотрелся — неее... не паскаль

Интересно кто-нибудт на турбопаскле еще пишет?
Re[12]: Ваши последние 20 строк кода
От: Костя Ещенко Россия  
Дата: 18.03.05 13:42
Оценка:
Mr. None wrote:

> КЕ>Вот подумалось — пустое множество ничего не содержит по определению.

> Поэтому над пустым множеством можно совершать любые операции — результат всегда будет нулевой . Это один из важных принципов теории множеств...
>
> Кроме того, кстати, любое множество содержит само себя вместе со своими границами. Так что в любом случае нет никакого парадокса...

Дык мы о разном говорим. Виноват мой кривой язык.

Ты говоришь о том что множество всегда является своим подмножеством. А а я о том что множество не должно включать само себя в качестве элемента. X не принадлежит X. Понятно что это касается и пустого множества.

Пример парадокса — утверждение "Из каждого правила есть исключения". Будучи примененным к самому себе это утверждение приводит к противоречию.
Posted via RSDN NNTP Server 1.9
На самом деле, люди не читают газеты, они принимают их каждое утро, так же как ванну. ©Маршалл Мак-Льюэн
Re[3]: Ваши последние 20 строк кода
От: БСС Россия  
Дата: 18.03.05 16:37
Оценка: :)
Здравствуйте, DuШes, Вы писали:

DШ>имхо...нечитаемый язык...


Да, это точно... Есть така штука — Trace Mode (трассовая мудя в простонародии). Есть там такой язык — язык функциональных блоков. Вообще писать на нем куда проще — пишется в редакторе, там всё визуально — накидываешь блоки (например здесь функция GT(...) — это блок "больше", а SEL(...) — выбор из двух по флагу), а также взаимосвязи между ними. Просто сейчас пишу документацию, а там скриншот (для описания функционального предназначения программы) фиг приведешь — нада все расписывать и приходиться писать в документации такое (благо трасе муде может генерировать этот код из FBD) + коментарии для непонятливых программеров заказчика (тем более обидно, т.к. они ничего читать не будут).
... << RSDN@Home 1.1.4 beta 4 rev. 303>>

Re[2]: Ваши последние 20 строк кода
От: MShura  
Дата: 18.03.05 17:11
Оценка: 2 (1) :)
M>Привел всю функчию, не обессудьте

M>
M>bool iqBuilder::build()
M>{
M>    QFile file( _file );
M>    if(!file.open(IO_ReadWrite))
M>    {
M>        _logger.log(QString("Could not open file ") + _file);
M>        file.close();  // Либо этот вызов необязателен: ~QFile
M>        return false;
M>    }

M>    QString s;
M>    int line, column;

M>    if(!_xmlDoc->setContent(&file, &s, &line, &column))
M>    {
M>        _logger.log(QString("Xml error: ") + s + QString(" on line ") +  QString::number(line) + ", column " + QString::number(column));
// Либо здесь пропущено file.close()
M>        return false;
M>    }
}
M>
Re[5]: Ваши последние 20 строк кода
От: Рома Мик Россия http://romamik.com
Дата: 18.03.05 17:17
Оценка: :)
Здравствуйте, ozone.km, Вы писали:

OK>Интересно кто-нибудт на турбопаскле еще пишет?

пишет-пишет
Автор: jhfrek
Дата: 03.06.03
Re: Это выглядит вот так:
От: SilverCloud Россия http://rodonist.wordpress.com
Дата: 18.03.05 18:11
Оценка:
Re[3]: Ваши последние 20 строк кода
От: Mamut Швеция http://dmitriid.com
Дата: 19.03.05 08:30
Оценка:
Ндааа... Что-то я промахнулся... Спасибо
... << RSDN@Home 1.1.4 beta 4 rev. 0>> ... <<Winamp is playing "Что играет? Где играет? Где ВинАмп, я вас спрашиваю?">> ...


dmitriid.comGitHubLinkedIn
Re: Ваши последние 20 строк кода
От: 55aaf925-4dbf-4578-9e3c-2f63d11aeda5  
Дата: 19.03.05 16:08
Оценка:
        public static object FillObjectFromSqlDataReader(object obj, SqlCommand cmd, SqlConnection conn)
        {
            Type type = obj.GetType();
            cmd.Connection = conn;
            if (conn.State!=ConnectionState.Open) conn.Open();
            SqlDataReader reader = cmd.ExecuteReader();
            while(reader.Read())
            {
                MemberInfo[] members = type.GetProperties();
                foreach(MemberInfo member in members)
                {
                    SqlSelectAttribute selectAttribute = new SqlSelectAttribute(true);
                    Object[] myAttributes = member.GetCustomAttributes(typeof(SqlSelectAttribute),true);
                    if (myAttributes.Length>0)
                        selectAttribute = (SqlSelectAttribute)myAttributes[0];

                    if (selectAttribute.Select)
                    {
                        object sqlValue = reader[member.Name];
                        try
                        {
                            type.GetProperty(member.Name).SetValue(obj, sqlValue, null);
                        }
                        catch{}
                    }
                }
            }
            if (conn.State==ConnectionState.Open) conn.Close();
            return obj;
        }
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
Re: Ваши последние 20 строк кода
От: tiamatinc  
Дата: 20.03.05 09:48
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Просто ради интереса — кто чего делает. 20 строк, надеюсь коммерческой тайны не составляют


    QRImage1->Picture->LoadFromFile(dm_DataBase->Pict);
    QRlbl_Address->Caption = dm_DataBase->Company;
    QRlbl_Caption->Caption = "Акт выполнения работ №" +
        dm_DataBase->ADOtbl_Main->FieldByName("Номер")->AsString + " от " + Date().DateString();
    QRlbl_Prod->Caption = "Оборудование: " +
        dm_DataBase->ADOtbl_Main->FieldByName("Оборудование 2")->AsString +
        ", S/N: " + dm_DataBase->ADOtbl_Main->FieldByName("Серийный номер")->AsString;
    QRlbl_Report->Caption = "Заявка №" +
        dm_DataBase->ADOtbl_Main->FieldByName("Номер")->AsString + " от " +
        dm_DataBase->ADOtbl_Main->FieldByName("Дата приёма")->AsString;
    QRBand2->Enabled      = dm_DataBase->ADOtbl_NewParts->RecordCount;
    QRSubDetail2->Enabled = dm_DataBase->ADOtbl_NewParts->RecordCount;

    double Sum = double(f_Main->cxgrid_WorksDBTableView1->DataController->Summary->FooterSummaryValues[0].IsNull()?
        0.:f_Main->cxgrid_WorksDBTableView1->DataController->Summary->FooterSummaryValues[0]) +
        double(f_Main->cxGrid1DBTableView1->DataController->Summary->FooterSummaryValues[0].IsNull()?
        0.:f_Main->cxGrid1DBTableView1->DataController->Summary->FooterSummaryValues[0]);
    AnsiString Cost = FloatToStrF(Sum, ffNumber, 15, 2);
    AnsiString Number = Numeral(Sum) + Cost.SubString(Cost.Pos(",")+1, 2) + " копеек";
    
    QRlbl_Cost->Caption = "Всего оказано услуг на сумму " + Number;
    if(dm_DataBase->ADOtbl_Main->FieldByName("Исполнитель")->AsString.IsEmpty())
    {
        dm_DataBase->ADOqry_SetUser->Parameters->ParamValues["Name"] =
            dm_DataBase->ADOtbl_Users->FieldByName("ФИО")->AsString;
        dm_DataBase->ADOqry_SetUser->ExecSQL();
        dm_DataBase->Refresh(dm_DataBase->ADOtbl_Main, "[Номер] ASC");
    }
    qrep_Act->Preview();


Поубивал бы тех кто QReport делал
Re[13]: Ваши последние 20 строк кода
От: Mr. None Россия http://mrnone.blogspot.com
Дата: 21.03.05 05:57
Оценка:
Здравствуйте, Костя Ещенко, Вы писали:

КЕ>Mr. None wrote:


КЕ>Дык мы о разном говорим. Виноват мой кривой язык.


КЕ>Ты говоришь о том что множество всегда является своим подмножеством. А а я о том что множество не должно включать само себя в качестве элемента. X не принадлежит X. Понятно что это касается и пустого множества.


Множество A может быть элементом множества B только в том случае, если множество B есть множество множеств... Так что множество не может быть своим собственным элементом, равно как и элементом любого другого множества содержащего налогичные элементы (не помню как называется термин обозначающий описываемую сущность этих множеств, то ли мощность, то ли размерность, то ли не то не другое, так что не буду выпендриваться ).
Компьютер сделает всё, что вы ему скажете, но это может сильно отличаться от того, что вы имели в виду.
Re[2]: Ваши последние 20 строк кода
От: Privalov  
Дата: 21.03.05 06:18
Оценка:
Здравствуйте, devstd, Вы писали:

D>Генеральному директору

D>ОСАО ***

D>от специалиста ***




D>ЗАЯВЛЕНИЕ



D> Прошу уволить меня по собственному желанию 00 декабря 2005 года.




D>


И что, компилируется? А какой транслятор?
Re[14]: Ваши последние 20 строк кода
От: Костя Ещенко Россия  
Дата: 21.03.05 06:59
Оценка:
Здравствуйте, Mr. None, Вы писали:

КЕ>>Ты говоришь о том что множество всегда является своим подмножеством. А а я о том что множество не должно включать само себя в качестве элемента. X не принадлежит X. Понятно что это касается и пустого множества.


MN>Множество A может быть элементом множества B только в том случае, если множество B есть множество множеств... Так что множество не может быть своим собственным элементом, равно как и элементом любого другого множества содержащего налогичные элементы (не помню как называется термин обозначающий описываемую сущность этих множеств, то ли мощность, то ли размерность, то ли не то не другое, так что не буду выпендриваться ).


Ну вот, теперь ты сделал наши множества типизированными. Термин так и называется — тип (тип 0 — примитивные элементы, тип 1 — множества элементов и т.д.). Теория типов была введена для пресечения подобных противоречий, но она будто бы сильно осложняет математические построения. И чтобы оставить сложность на приемлемом уровне в теорию типов была введена какая-то дополнительная аксиома, позволяющая формулировать и доказывать одну теорему для множеств различных типов.

Не так давно читал книгу по истории-философии математики и чего-то еще помню
На самом деле, люди не читают газеты, они принимают их каждое утро, так же как ванну. ©Маршалл Мак-Льюэн
Re: Ваши последние 20 строк кода
От: Ban001  
Дата: 24.03.05 09:21
Оценка: :)
Звучит както настоаживающе...
Ваши последние 20 строк кода...

А потом костлявая с косой?
... << RSDN@Home 1.1.3 stable >>
Re[2]: Ваши последние 20 строк кода
От: Ватакуси Россия  
Дата: 24.03.05 11:55
Оценка:
Ты свой класс что-ли пишешь?
В тех диалектах, что я знаю есть стандартные методы для конвертации дат и вычисления разнообразных дистанций.
Все будет Украина!
Re: Ваши последние 20 строк кода
От: The Lex Украина  
Дата: 24.03.05 13:10
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Просто ради интереса — кто чего делает. 20 строк, надеюсь коммерческой тайны не составляют


А я ничего не делаю — пишу в форуме RSDN всякие глупости — кто знает, тот в курсе...



P.S. Хотя, если уж очень хотите: "перемастерил" из
  FILE* fp;
  LARGE_INTEGER file_size;

  fp = fopen(naam, _T("rb"));
  if ( !fp ) return 0;

  ::GetFileSizeEx( fp, &file_size );

в
  HANDLE hFile = ::CreateFile(
    naam,
    0,
    FILE_SHARE_READ,
    NULL,
    OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL,
    NULL);

  if (hFile == INVALID_HANDLE_VALUE)
    return 0;

  LARGE_INTEGER file_size;
  memset(&file_size, 0, sizeof(file_size));

  ::GetFileSizeEx( hFile, &file_size );

  ::CloseHandle(hFile);



Теперь вот снова ничего не делаю — пишу в форуме RSDN всякие глупости...
Голь на выдумку хитра, однако...
Re[2]: Ваши последние 20 строк кода
От: Jester Канада  
Дата: 24.03.05 15:59
Оценка:
Здравствуйте, rus blood, Вы писали:

RB>Здравствуйте, Нахлобуч, Вы писали:


RB>20 — так 20...

RB>
RB> ..........................
RB>    /* Now we should re-order keywords, created from names of products.
RB>       These keywords and their derived forms (canonical and templated)
RB>       have spider_order value -1. */
RB>"   FOR pro_rec IN "
RB>"     (SELECT DISTINCT prk_pro_id FROM dd_sem_product_keyword "
RB>"      WHERE prk_spider_order < 0) "
RB>"   LOOP "
RB>"     v_current_order := 0; "
RB>      /* We should re-order keywords of the current product */
RB>"     FOR pro_kwd_rec IN "
RB>"       (SELECT prk_kwd_id FROM dd_sem_product_keyword "
RB>"        WHERE prk_pro_id = pro_rec.prk_pro_id "
RB>"        ORDER BY prk_active_product DESC) "
RB>"     LOOP "
RB>"       v_current_order := v_current_order + 1; "
RB>"       UPDATE dd_sem_product_keyword "
RB>"       SET prk_spider_order = v_current_order "
RB>"       WHERE prk_pro_id = pro_rec.prk_pro_id AND "
RB>"             prk_kwd_id = pro_kwd_rec.prk_kwd_id; "
RB>"     END LOOP; "
RB>"   END LOOP; "
RB>......................
RB>


ИМХО, фороллом быстрее было бы...
Re[3]: Ваши последние 20 строк кода
От: rus blood Россия  
Дата: 24.03.05 16:07
Оценка:
Здравствуйте, Jester, Вы писали:

J>ИМХО, фороллом быстрее было бы...


Можно подробнее? Я в pl/sql не сильный спец...
Имею скафандр — готов путешествовать!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.