-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80




Форум на Исходниках.RU


Добавить любой RSS - источник (включая журнал LiveJournal) в свою ленту друзей вы можете на странице синдикации.

Исходная информация - http://forum.sources.ru.
Данный дневник сформирован из открытого RSS-источника по адресу http://forum.sources.ru/yandex.php, и дополняется в соответствии с дополнением данного источника. Он может не соответствовать содержимому оригинальной страницы. Трансляция создана автоматически по запросу читателей этой RSS ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

[Обновить трансляцию]

Язык для обучения программированию

Пятница, 21 Августа 2020 г. 20:31 + в цитатник
D_KEY:
Цитата Qraizer @
P.S. Сорри, но продолжать "обучать программированию", пусть даже и на примере отдельно взятого языка, я не буду.

Пока создается впечатление, что у тебя сильная деформация из-за глубокого изучания одного языка.

https://forum.sources.ru/index.php?showtopic=419241&view=findpost&p=3837423


Метки:  

Язык для обучения программированию

Пятница, 21 Августа 2020 г. 20:29 + в цитатник
Qraizer:
Цитата korvin @
В смысле механизма рефлексии? Или о каком интерфейсе речь?
Эм-м... ну можно и так сказать. Ирония в том, в Плюсах уже всё для этого есть, осталось только договориться именно так всем и действовать.

https://forum.sources.ru/index.php?showtopic=419241&view=findpost&p=3837422


Метки:  

Вопросы про SQLite+DataGridView

Пятница, 21 Августа 2020 г. 20:29 + в цитатник
hd44780: Привет всем.
Есть ряд вопросов по этой связке.

БД простая, как 3 копейки - 3 таблицы:
1. Клиенты - серийный номер изделия, имя клиента, телефон и т.п. чепуха
2. Ремонты - дата ремонта, тип ремонта (id ремонта из справочника), ФИО мастера, стоимость ремонта
3. Справочник типа ремонта - название вида работы, цена.

В каждой таблице есть id - primary key, в таблице ремонтов также есть id_client - foreign key - ссылка на таблицу клиентов.
Типовая структура для таких задачек.

Приложение C#, WinForms, NET4.0. Заказчику всё равно, а WPF я чего-то не понимаю, возможно плохо изучил, не пошло оно мне.
Содержимое таблиц показываю в 2-х разных формах - клиенты и ремонты. 3-я форма - редактирование справочника, ничего интересного.
Вся эта кухня уже крутится, работает нормально. Но есть одна странность.

В таблице ремонтов поле тип ремонта - столбец Combobox, работу с ним взял отсюда - https://khanrahim.wordpress.com/2010/04/13/...agridview-in-c/
Но если я поменяю в каком-то ремонте тип (просто выбираю другое значение их списка) событие CellValueChanged приходит, там я разблокирую кнопку "Сохранить". Но она ничего не сохраняет. Но если изменить в этой же строке ещё что-то, например, имя мастера, то всё сохраняется - и новое значение списка и фамилия.
Кнопка сохранить делает по сути repairs_adapter.Update(repairs_dt); -- как во всех букварях.

Сильно подозреваю, что дело в командах InsertCommand, UpdateCommand. Там по сути
    string s_query = string.Format(@"SELECT * FROM repairs WHERE repairs.id_client = {0}", id_client_for_repair);
    // string s_query = string.Format(@"SELECT repairs.date, repairs.id_repair_type, repairs.repair_note, repairs.master_fio, repairs.summa
    // FROM repairs WHERE repairs.id_client = {0}", id_client);
    repairs_adapter = new SQLiteDataAdapter(s_query, m_dbConn);
    SQLiteCommandBuilder cb = new SQLiteCommandBuilder(repairs_adapter);
    repairs_adapter.UpdateCommand = cb.GetUpdateCommand();
    repairs_adapter.InsertCommand = cb.GetInsertCommand();
    repairs_adapter.DeleteCommand = cb.GetDeleteCommand();


Я смотрел, что пишется, например, в UpdateCommand:
    "UPDATE [main].[sqlite_default_schema].[repairs] SET [id_client] = @param1, [date] = @param2, [id_repair_type] = @param3, [repair_note] = @param4, [master_fio] = @param5, [summa] = @param6 WHERE (([id_repair] = @param7) AND ([id_client] = @param8) AND ([date] = @param9) AND ([id_repair_type] = @param10) AND ((@param11 = 1 AND [repair_note] IS NULL) OR ([repair_note] = @param12)) AND ([master_fio] = @param13) AND ((@param14 = 1 AND [summa] IS NULL) OR ([summa] = @param15)))"


Как понять, что оно передаёт по факту в эти @paramXX?
id_repair - это primary key, т.е. все остальные условия в WHERE нафиг никому не нужны. Но как дать ему это понять? Я видел примеры ручного задания этих команд, но все они были какими-то огрызками непонятно от чего.

на id_client база вообще ругалась, вынужден был загнать костыль
    foreach (DataGridViewRow row in dataGridViewRepairs.Rows)
    {
    row.Cells[1].Value = id_client_for_repair.ToString();
    } // foreach

перед repairs_adapter.Update(repairs_dt);

Есть ли где-то какие-то внятные примеры, как всё это делать?
Примеры по SQL Server - туфта полная, там все эти InsertCommand никто никогда не заполняет, работает и так. С SQLite - надо заполнять.

Спасибо.

https://forum.sources.ru/index.php?showtopic=419407&view=findpost&p=3837421


Метки:  

Си массивы

Пятница, 21 Августа 2020 г. 17:21 + в цитатник
prografix:
Цитата
{ int tmp[] = {5, 6, 7, 8}; for(int i = 0; i < size_of(tmp); ++i) i[i] = tmp[i];};

Это будет работать?

https://forum.sources.ru/index.php?showtopic=419398&view=findpost&p=3837418


Метки:  

Как поймать параметр в другом классе

Пятница, 21 Августа 2020 г. 17:14 + в цитатник

Метки:  

Как поймать параметр в другом классе

Пятница, 21 Августа 2020 г. 16:46 + в цитатник
Black_Dragon:
Цитата skif1986 @
Как мне, находясь в CChildFrame, написать функцию, которая будет ловить этот параметр и исходя из его значения выполнять определенные действия?

А зачем она должна ловить?
Tree информирует главный фрейм, а он должен проинформировать дочерний (вызвав функцию или передав сообщение.).

У меня SDI, можно делать что-то подобное...
    void CMainFrame::OnSunPwrSpin()
    {
    ChangeVal(m_pREdit_SunPwr, SPIN_DEF_MIN, SPIN_DEF_MAX, &g_SunPwr);
    CLifeDoc *pDoc = (CLifeDoc*) GetActiveDocument();
    if (pDoc)
    {
    pDoc->ChangeSun();
    }
    }

https://forum.sources.ru/index.php?showtopic=419405&view=findpost&p=3837416


Метки:  

Си массивы

Пятница, 21 Августа 2020 г. 16:36 + в цитатник
Black_Dragon:
Цитата prografix @
i что тут делает?

Наверно дестенейшен.
Цитата Pit-Bul @
int i[] = {0, 1, 2, 3};

https://forum.sources.ru/index.php?showtopic=419398&view=findpost&p=3837415


Метки:  

Изменить параметры запроса поиска.

Пятница, 21 Августа 2020 г. 16:18 + в цитатник
Сергей85: SELECT * FROM joomla_content WHERE metakey LIKE '%раздел%' - находит статьи. Но в них есть иные теги, помимо %раздел%.

SELECT * FROM joomla_content WHERE metakey = ''; - работает.

https://forum.sources.ru/index.php?showtopic=419400&view=findpost&p=3837414


Метки:  

Как поймать параметр в другом классе

Пятница, 21 Августа 2020 г. 16:02 + в цитатник
skif1986: Подскажите, пожалуйста. Есть MDI, в котором реализовано дерево. Мне нужно при выборе определенного пункта дерева переключать виды.
Текущий выбранный пункт дерева передается в lParam.
Как мне, находясь в CChildFrame, написать функцию, которая будет ловить этот параметр и исходя из его значения выполнять определенные действия?
121.jpg (, : 19)
123.jpg (, : 20)

https://forum.sources.ru/index.php?showtopic=419405&view=findpost&p=3837413


Метки:  

Си массивы

Пятница, 21 Августа 2020 г. 15:09 + в цитатник
prografix:
Цитата Black_Dragon @
cp_arr(int, i, {5, 6, 7, 8})

i что тут делает?

https://forum.sources.ru/index.php?showtopic=419398&view=findpost&p=3837410


Метки:  

[OpenGL] Чёрный экран при вызове glClearColor с заданным цветом

Пятница, 21 Августа 2020 г. 12:51 + в цитатник
Black_Dragon:
Цитата Serafim @
Проблема решена

Наверно очень секретным методом?

https://forum.sources.ru/index.php?showtopic=416896&view=findpost&p=3837404


Метки:  

Direct2D и мультипоточность

Пятница, 21 Августа 2020 г. 12:43 + в цитатник
Black_Dragon: В начале кода инициализации самого приложения имеем:
EnableD2DSupport(D2D1_FACTORY_TYPE_MULTI_THREADED);

В окне рисования, при его создании, создаем заготовки кистей (64 тыс)
    #pragma omp parallel for num_threads(4)
    for (COL r = 0; r < cColCount; ++r)
    {
    for (COL g = 0; g < cColCount; ++g)
    for (COL b = 0; b < cColCount; ++b)
    {
    const UNum ind = CTreeColor::GetID(r, g, b);
    m_pArrBrush[ind] = new CD2DSolidColorBrush(render, CTreeColor::GetColor(r, g, b), NULL, FALSE);
    }
    }

Вообщем, после создании нескольких кистей висит в ожидании из "new CD2DSolidColorBrush".
Без omp все нормально.
Просто, эта процедура занимает несколько секунд...

https://forum.sources.ru/index.php?showtopic=419404&view=findpost&p=3837403


Метки:  

Ошибка аутентификации SMTP при настройке почты через ДО

Пятница, 21 Августа 2020 г. 12:08 + в цитатник
Rust:
Цитата evGenius @
Там бывает выключен POP/SMTP или ограничен доступ к нему.

Точно! Был отключен доступ из сторонних программ. Все заработало

https://forum.sources.ru/index.php?showtopic=419403&view=findpost&p=3837402


Метки:  

Ошибка аутентификации SMTP при настройке почты через ДО

Пятница, 21 Августа 2020 г. 10:37 + в цитатник
evGenius: Проверить настройки самой учетной записи почты в Яндексе. Там бывает выключен POP/SMTP или ограничен доступ к нему.

https://forum.sources.ru/index.php?showtopic=419403&view=findpost&p=3837401


Метки:  

Ошибка аутентификации SMTP при настройке почты через ДО

Пятница, 21 Августа 2020 г. 10:23 + в цитатник
Rust: Доброго дня!

Настраиваю почту в документообороте и столкнулся с ошибкой аутентификации настраиваемой учетной записи

    Не удалось подключиться к серверу SMTP: Аутентификация не прошла (SMTP error code 535 5.7.8 Error: authentication failed: Invalid user or password!)


Самое интересное что через веб морду почта работает (почта на яндексе), т.е. учетные данные в ДО верные (проверил несколько раз), но при подключении ошибка. Но только у одного пользователя, у остальных все ОК.
Учетную запись в ДО создал копированием, а потом изменил нужные поля (логин/пароль). Настройки подключения аналогичны тем что у работающих учеток, проверял и в режиме 1С и в конфигураторе.
Даже не знаю куда еще копать...

https://forum.sources.ru/index.php?showtopic=419403&view=findpost&p=3837400


Метки:  

Си массивы

Пятница, 21 Августа 2020 г. 10:11 + в цитатник
Black_Dragon:
Цитата Pit-Bul @
классы не могу использовать ибо чистый Си

DEFINE-ы
Типа так у меня
    #define RESETVAR(var, def) auto old = var; var = def; return old;
    bool GetResVisible() { RESETVAR(m_Visible, false) }


    #define cp_arr(t, a, b) { t tmp[] = b; for(int i = 0; i < size_of(tmp); ++i) a[i] = tmp[i];};
    cp_arr(int, i, {5, 6, 7, 8})

https://forum.sources.ru/index.php?showtopic=419398&view=findpost&p=3837398


Метки:  

Си массивы

Пятница, 21 Августа 2020 г. 09:14 + в цитатник
JoeUser:
Цитата Qraizer @
Та не. Синтаксически список значений через , внутри {} является инициализатором, а грамматически инициализаторы позволяются только в определениях. Выражения являются выполняемыми инструкциями, а не определениями, поэтому инициализаторы в них недопустимы.

И да, и нет, ИМХО! "Инициализаторы", вангую, те же операторы. Пример части кода (x86_x64 gcc 10.1):

    const int A[]={0,1,2,3,4,5,6,7,8,9};

... трансформируется в:

    mov DWORD PTR [rbp-48], 0
    mov DWORD PTR [rbp-44], 1
    mov DWORD PTR [rbp-40], 2
    mov DWORD PTR [rbp-36], 3
    mov DWORD PTR [rbp-32], 4
    mov DWORD PTR [rbp-28], 5
    mov DWORD PTR [rbp-24], 6
    mov DWORD PTR [rbp-20], 7
    mov DWORD PTR [rbp-16], 8
    mov DWORD PTR [rbp-12], 9

https://forum.sources.ru/index.php?showtopic=419398&view=findpost&p=3837396


Метки:  

Язык для обучения программированию

Пятница, 21 Августа 2020 г. 07:59 + в цитатник
OpenGL:
Цитата Qraizer @
Ну вот и вернулись к началу: для дискретных входов нет такого понятия, как арифметика.

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

https://forum.sources.ru/index.php?showtopic=419241&view=findpost&p=3837393


Метки:  

Изменить параметры запроса поиска.

Пятница, 21 Августа 2020 г. 07:22 + в цитатник
Akina:
Цитата Сергей85 @
- найти статьи, в которых указаны только теги вида "раздел";

    SELECT * FROM joomla_content WHERE metakey LIKE '%раздел%';
    -- или
    SELECT * FROM joomla_content WHERE metakey = 'раздел';

Какой из запросов использовать - зависит от того, как именно выглядит содержимое поля тегов.

Цитата Сергей85 @
- найти статьи, в которых тегов вообще нет.

    SELECT * FROM joomla_content WHERE metakey = '';
    -- или
    SELECT * FROM joomla_content WHERE metakey IS NULL;

Какой из запросов использовать - зависит от того, что пишется в поле тегов при их отсутствии.

https://forum.sources.ru/index.php?showtopic=419400&view=findpost&p=3837391


Метки:  

Си массивы

Пятница, 21 Августа 2020 г. 07:11 + в цитатник
Pit-Bul:
Цитата Qraizer @
Та не. Синтаксически список значений через , внутри {} является инициализатором, а грамматически инициализаторы позволяются только в определениях. Выражения являются выполняемыми инструкциями, а не определениями, поэтому инициализаторы в них недопустимы.


спасибо, коротко и ясно )))

Цитата Black_Dragon @
примерно так, корректность не ручаюсь, код набираю тут, как то так примерно, использовать специальные классы.
std::array aaa = {0, 1, 2, 3};
aaa = std::array{4, 5, 6, 7, 8};


Black_Dragon, классы не могу использовать ибо чистый Си

Всем спасибо!

Добавлено
не поставил галочку (

https://forum.sources.ru/index.php?showtopic=419398&view=findpost&p=3837389


Метки:  

Поиск сообщений в rss_forum_sources_ru
Страницы: 2628 ... 2415 2414 [2413] 2412 2411 ..
.. 1 Календарь