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




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 2317 • Страница 50 из 116<  1 ... 47  48  49  50  51  52  53 ... 116  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
Ray Adams
Цитата:
На SQL серверах так делается 80% всех отчетов.
Хм, это уже радует :-)
Цитата:
Хотя я сейчас вот думаю и мне кажется что это можно будет сделать , правда на MS SQL. На Interbase, Paradox не получится из-за не такого сильного SQL
Я юзаю Оракл.

_________________
Ку ку



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Daemon писал(а):
Я юзаю Оракл.

Ну тогда можно попробовать. Щас рискну :)
Как я понял, тебе надо выбрать первую и последню точку для каждого trid , где stord от 0 и до 200?

Добавлено спустя 6 минут, 12 секунд:
Вот лови.
_______
Код:
select distinct trid,
stid1=(select stid from aaa z where x.trid=z.trid and
z.stord = (select min(stord) from aaa f where f.trid=z.trid)
),
stid2=(select stid from aaa z where x.trid=z.trid and
z.stord = (select max(stord) from aaa f where f.trid=z.trid)
)
from aaa x

Таблицу я назвал как aaa. Думаю, что Oracle схавает такой запрс без проблем.


 

Member
Статус: Не в сети
Регистрация: 06.09.2005
Откуда: Москва
Как в Делфи из консольного приложения запускать потоки?


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
Ray Adams спасибо, но Oracle не воспринимает :-(
Код:
stid1=(select stid from aaa z where x.trid=z.trid and
     *
ошибка в строке 2:
ORA-00923: ключевое слово FROM не найдено там, где оно ожидалось


Добавлено спустя 1 минуту, 41 секунду:
Bozz Bishop также, как и не из консольного(посредством Win API), только нужно следить, чтобы основная программа не завершилась раньше завершения потоков программы.

_________________
Ку ку


 

Member
Статус: Не в сети
Регистрация: 04.01.2004
Откуда: Владивосток
решил написать составитель расписаний. но всю сложность работы понял тока спустя неделю работы. перечислю сложности:
а) у нас в лицее 7-11 классы, по 3 класса на параллеле, итого 15 классов.
б) надо учитывать
1)один учитель в один день не может вести урок у двух классов одновремеенно(так же некоторый учителя могут вести уроки как у одной параллели, так и у другой)
2)некоторые уроки должный быть парами, некторые нет
3)не должно быть дней, когда в расписании 2 физики, 2 алгебры, 2 русский, т.е. тяжелых дней(тут я решил ввести коэф сложности для каждого предмета)
4)одиночный уроки, такие как черчение, химия, геометрия и т.ду одной параллели должны быть в один деньэто далеко не весь список, чем дальше, тем хуже...
2 раза переписывал весь код.решил было сделать генератором. получилось составлять расписание на неделю для одого класса с учетом парный - непарных предметов, учитывается кол-во предметов в неделю, например, если в неделе одно черчение, то оно должно быть только одно.
но позже понял, что если добавить еще 2 класса в параллели, то с генератором далеко не уедешь.. а если учесть, что потом бы пришлось добавлять 4 параллели..
в общем хотелось бы узнать, каким образо можно было бы это все осуществить, как правильно организовать программу. спрашиваю не потому, что нужно халява, а потому, что уже действительно не знаю, каким образом.а начинать другую работу очень не хочется, хочется эту добить, сделать.

_________________
*Cofradia Intel* <<<ATI>>>
P4 2.8@3.6/X800Pro/1024Mb/2*160gb WD1600JB/SyncMaster 932в/СВО/Xp SP2 + Asus P525


 

Member
Статус: Не в сети
Регистрация: 13.06.2005
Откуда: Украина, Глухов
Ray Adams писал(а):
На Interbase, Paradox не получится из-за не такого сильного SQL

ну зачем так? :)
Interbase - хороший сервер... А "птичка" вторая ваще песня будет :)

Daemon
select distinct a1.trid, a1.stid, a2.stid, a1.stord, a2.stord
from aaa a1, aaa a2
where (
(a2.stord = 200 and a1.stord = 0) and
(a1.trid = a2.trid)
)
order by a1.trid, a1.stord


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
wCat мени сенкс, работает отлично :-)

_________________
Ку ку


 

Member
Статус: Не в сети
Регистрация: 13.06.2005
Откуда: Украина, Глухов
Daemon
Вэлкам :)

SardoX писал(а):
в общем хотелось бы узнать, каким образо можно было бы это все осуществить, как правильно организовать программу.

ты бы вопрос разбил на составляющие - где что не получается. потому как в общем случае - задача ОЧЕНЬ сложная.
Сильно пахнет графами.
рекомендую ввести разумные ограничения и не пытаться решить задачу для любого случая.

_________________
Что-то начнется, что-то закончится...


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Daemon Вообщето и мой прекрасно должен был быть сьеден твоим Ораклом :) Ты наверное имя таблицы не правильно гдето прописал. Тебе именно 0 и 200 было надо? А если у тебя к примеру только 0 и 170 есть? :)

wCat писал(а):
ну зачем так? Smile Interbase - хороший сервер

Надо надо. Я сам пахал на IB лет пять, потом пересел на MS SQL. Сравнивать просто смешно :)


 

Member
Статус: Не в сети
Регистрация: 13.06.2005
Откуда: Украина, Глухов
Ray Adams писал(а):
Надо надо. Я сам пахал на IB лет пять, потом пересел на MS SQL. Сравнивать просто смешн

Слон и Моська. :) Не будем впадать в оффтоп.
Для многих сфер примененния IB (ну я бы сказал всетаки FB) по крайней мере не хуже.

_________________
Что-то начнется, что-то закончится...


 

Member
Статус: Не в сети
Регистрация: 29.11.2003
Откуда: Chelyabinsk
Подскажите мне пожалуйста одну вещь...

Мне нужно написать прогу на Дельфи которая запускает другие программы. Но мне поставили одно условие, которое я не знаю как реализовать. Такое вот: нужно чтобы твоя программа запустила другую программу, а сама при этом либо исчезла с экрана, либо свернулась в трей, а потом когда запущенная программа завершила работу, нужно чтобы твоя программа снова всплыла на экран как ни в чем не бывало.

Скажите КАК конкретно это реализовать?

Зараннее благодарен... :)

_________________
Ушел, но обещал вернутся...


 

Member
Статус: Не в сети
Регистрация: 13.06.2005
Откуда: Украина, Глухов
если не лень немного покопаться, даю наводку:
Win API: CreateProcess, WaitForSingleObject, ShowWindow. Если трэй - ShellNotifyIcon.

_________________
Что-то начнется, что-то закончится...


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
HeroesX
Код:
{ WinExecAndWait32 ******************************************** }
{ 32 bit routine that will launch an app and wait for it to     }
{ finish. Works on 32 bit & 16 bit exe's as well as .pifs       }
{ ************************************************************* }
function WinExecAndWait32(FileName: string; Visibility: integer): integer;
{ returns -1 if the Exec failed, otherwise returns the process' }
{ exit code when the process terminates.                        }
var
  zAppName: array[0..512] of char;
  zCurDir : array[0..255] of char;
  WorkDir : string;
  StartupInfo: TStartupInfo;
  ProcessInfo: TProcessInformation;
    CardinalResult: cardinal;

begin
  StrPCopy(zAppName, FileName);
  GetDir(0, WorkDir);
  StrPCopy(zCurDir, WorkDir);
  FillChar(StartupInfo, Sizeof(StartupInfo), #0);
  StartupInfo.cb := Sizeof(StartupInfo);
  StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
  StartupInfo.wShowWindow := Visibility;
  if not CreateProcess(nil,
                       zAppName, { pointer to command line string }
                       nil, { pointer to process security attributes }
                       nil, { pointer to thread security attributes }
                       false, { handle inheritance flag }
                       CREATE_NEW_CONSOLE or { creation flags }
                       NORMAL_PRIORITY_CLASS,
                       nil, { pointer to new environment block }
                       nil, { pointer to current directory name }
                       StartupInfo, { pointer to STARTUPINFO }
                       ProcessInfo) then { pointer to PROCESS_INF }
    Result := -1
  else
    begin
      result:=WaitforSingleObject(ProcessInfo.hProcess, 1000000);
        GetExitCodeProcess(ProcessInfo.hProcess, CardinalResult);
      CloseHandle(ProcessInfo.hProcess);
      CloseHandle(ProcessInfo.hThread);
    end;
end;

Процедура запускает программу и ожидает ее завершения. Тебе надо сперва свернуться в трей, а потом высзать эту процедуру, а после завершения развернуться. По работе с треем ищи или готовые компоненты или сам делай, там все просто.


 

Member
Статус: Не в сети
Регистрация: 05.01.2005
HeroesX
HeroesX писал(а):
нужно чтобы твоя программа запустила другую программу, а сама при этом либо исчезла с экрана, либо свернулась в трей,

А если не хочешь париться с треем, то можешь запустить так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Form1.Visible:= False;
  try
    if WinExecAndWait32('calc.exe', 0) <> 0 then
      ShowMessage('бла-бла-бла');
  finally
    Form1.Visible:= True;
  end;
end;


 

Member
Статус: Не в сети
Регистрация: 11.10.2005
Откуда: Б. Калитва
помогите, дайте исходник тестирующей знания проги


 

Member
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
Acrob@t тут посмотри

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Member
Статус: Не в сети
Регистрация: 04.01.2004
Откуда: Владивосток
нужно построить линейный график по определенным цифрам(например, 51,24,37,33 и т.д). желательно с помощью tchart
в настройках компонента увидел лишь возможность посторить случайно график или из грида.

Добавлено спустя 2 часа, 14 минут, 34 секунды:
поправка - по вертикали эти цифры, по горизонтали другие цифры

_________________
*Cofradia Intel* <<<ATI>>>
P4 2.8@3.6/X800Pro/1024Mb/2*160gb WD1600JB/SyncMaster 932в/СВО/Xp SP2 + Asus P525


 

Member
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
SardoX Типа столбчатую диаграмму? Тогда просто настрой его соответствующим образом и добавляй точки, типа AddPointXY(X,Y,color...) кажется, точно не помню.

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Member
Статус: Не в сети
Регистрация: 04.01.2004
Откуда: Владивосток
можно ли отлавливать в любом приложении(от блокнота до аси или браузера какого нить) нажатие правой кнопкой и, если при этом нажатии открывается менюшка самого приложения, то добавить в эту менушку свой пункт?

_________________
*Cofradia Intel* <<<ATI>>>
P4 2.8@3.6/X800Pro/1024Mb/2*160gb WD1600JB/SyncMaster 932в/СВО/Xp SP2 + Asus P525


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
SardoX
Отловить можно через глобальные хуки, а вот добавить в меню нет, так как вывод меню делается самой программой, где мышкой ткнули.


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 2317 • Страница 50 из 116<  1 ... 47  48  49  50  51  52  53 ... 116  >
-

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


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

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


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

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan