Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2015, 23:20   #11
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от Dux Посмотреть сообщение
А анкеты сотрудников на нем сложно делать?
На пример что вы собирайтесь делать ? если я правильно понял ваши мысли
-- Оператор набивает в базе из приложений Delphi какой то пассажир да ?
--Вы хотите при нажатие кнопку "сохранить" что одновременно данный попадал таблицу и выходил готовые анкета-на предварительный просмотр да ?
Давайте что то придумаем чтобы "это тема" было интересно и практиковали тоже ....
xxbesoxx вне форума Ответить с цитированием
Старый 11.12.2015, 23:26   #12
Dux
Delphi Master
Форумчанин Подтвердите свой е-майл
 
Аватар для Dux
 
Регистрация: 31.03.2008
Сообщений: 803
По умолчанию

Необходимо следующее. Есть база данных MySQL. В ней следующие данные сотрудника: ФИО, Адрес, контакты и т.п., потом есть таблица в которой находится перечень документов (название, дата выдачи, дата окончания) и есть таблица - послужной список (стаж работы - компания, должность, период).

Необходимо по нажатию кнопки "Сформировать анкету" вывести все эти данные на сотрудника в анкетной форме, желательно .pdf.

Вопрос, есть ли такая возможность в Fast Reports?
Dux вне форума Ответить с цитированием
Старый 11.12.2015, 23:29   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
450$ стандартная версия... он того стоит?
Как тебе сказать, не покупал его я. На моей периферии за 450 баксов программы не покупают. Или демку возьми, поупражняйся, или бесплатный, другой. Но он хорош
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 12.12.2015, 02:52   #14
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от Dux Посмотреть сообщение
Необходимо следующее. Есть база данных MySQL. В ней следующие данные сотрудника: ФИО, Адрес, контакты и т.п.
На пример так
1)
Код:
use test;
#------------

create table Customers
(
 P_Id int NOT NULL AUTO_INCREMENT,
 LastName varchar(40) NOT NULL,
 FirstName varchar(40),
 Address varchar(40),
 City varchar(40),
 Telefon varchar(20),
 PRIMARY KEY (P_Id)
)

#----- XP - INSERT
 
DELIMITER $$
CREATE PROCEDURE  CustINSERT   ( IN   pLastName varchar(40),
                                 IN   pFirstName varchar(40),
                                 IN   pAddress varchar(40),
                                 IN   pCity varchar(40),
                                 IN   pTelefon varchar(20)
                               )
BEGIN
 INSERT INTO Customers (LastName, FirstName, Address, City, Telefon )
 VALUES (pLastName, pFirstName, pAddress, pCity, pTelefon  );  
 COMMIT;
END$$
DELIMITER ;
2) ini файл Connect.ini
Код:
[UserName]
str1=root
[Paswword]
str2=0000
[Server]
str3=localhost
[Database]
str4=test
[Port]
str5=3307
3)
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBAccess, MyAccess, MemDS, Grids, DBGrids,
  //------------------- -----------------------
       IniFiles, frxClass,  StdCtrls ;
  //------------------------------------------

type
  TForm1 = class(TForm)
    DBGrid1: TDBGrid;
    MyConnection1: TMyConnection;
    MyQuery1: TMyQuery;
    MyDataSource1: TMyDataSource;
    btnAdd: TButton;
    MyStoredProc1: TMyStoredProc;
    procedure FormCreate(Sender: TObject);
    procedure btnAddClick(Sender: TObject);
  private
    { Private declarations }
  public
     procedure INSERTCUST;
  end;

var
  Form1: TForm1;
  // *********************************************
     Ini: TIniFile;
  //**********************************************

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.btnAddClick(Sender: TObject);
begin
  with Form2 do
  begin
    Caption := 'Добавить';
    edtLastName.Text := '';
    edtFirstName.Text := '';
    edtAddress.Text := '';
    edtCity.Text := '';
    edtTelefon.Text := '';
    ShowModal;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  //   Все параметри для подклучение к MySQL  Я буду хранить в ini Файле
    Ini := TiniFile.Create(ExtractFilePath(Application.ExeName)+'\Connect.ini'); // Здесь потом можно поменять путь на  Connect.ini что оператор на заметил его и не почитал это параметри
     with MyConnection1 do
     begin
       Connected := false;
       Options.Charset := 'utf8';
       Options.UseUnicode := true;
       Username := Ini.ReadString('UserName','str1', '' );
       Password := Ini.ReadString('Paswword','str2', '');
       Server := Ini.ReadString('Server','str3', '');
       Database := Ini.ReadString('Database','str4', '');
       Port := Ini.ReadInteger('Port','str5', 3306);
       Connected := true;
     end;
    try
      with MyQuery1 do
      begin
        SQL.Clear;
        SQL.Add('SELECT * FROM Customers ORDER BY 1 ASC') ;
        Open;
      end;
    except
      ShowMessage('Невозможно подключиться к серверу MySql');
      Application.Terminate;
    end;

end;

procedure TForm1.INSERTCUST;
begin
  with MyStoredProc1 do begin
      try
        Params.Clear;
        StoredProcName:='CustINSERT';
        Prepare;
        ParamByName('pLastName').Value := Trim(Form2.edtLastName.Text);
        ParamByName('pFirstName').Value := Trim(Form2.edtFirstName.Text);
        ParamByName('pAddress').Value := Trim(Form2.edtAddress.Text);
        ParamByName('pCity').Value := Trim(Form2.edtCity.Text);
        ParamByName('pTelefon').Value := Trim(Form2.edtTelefon.Text);
        Execute;
      finally
        MyStoredProc1.Close;
        Form1.MyQuery1.Refresh;
      end;
    end;
end;

end.

Последний раз редактировалось xxbesoxx; 12.12.2015 в 02:58.
xxbesoxx вне форума Ответить с цитированием
Старый 12.12.2015, 02:55   #15
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

4)
Код:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, frxClass;

type
  TForm2 = class(TForm)
    edtLastName: TEdit;
    edtFirstName: TEdit;
    edtAddress: TEdit;
    edtCity: TEdit;
    edtTelefon: TEdit;
    lbl1: TLabel;
    lbl2: TLabel;
    lbl3: TLabel;
    lbl4: TLabel;
    lbl5: TLabel;
    btnSave: TButton;
    btnClose: TButton;
    frxReport1: TfrxReport;
    procedure btnSaveClick(Sender: TObject);
  private
     procedure PrintAnketa; //--------------------
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

uses Unit1;

{$R *.dfm}

{ TForm2 }

procedure TForm2.btnSaveClick(Sender: TObject);
begin
  if Form2.Caption = 'Добавить' then
    begin
        Form1.INSERTCUST;
        PrintAnketa;
        Close;
    end;
end;

procedure TForm2.PrintAnketa;  // из компоненту Edit заполняю  frxReport1
 var
   PmemLastName, PmemFirstName, PmemAddress,
   PmempCity, PmempTelefon: TfrxMemoView;
begin
  //----------------------------------------------------------------
   PmemLastName := frxReport1.FindObject('memLastName') as TfrxMemoView;
   PmemFirstName:= frxReport1.FindObject('memFirstName') as TfrxMemoView;
   PmemAddress:= frxReport1.FindObject('memAddress') as TfrxMemoView;
   PmempCity := frxReport1.FindObject('mempCity') as TfrxMemoView;
   PmempTelefon := frxReport1.FindObject('mempTelefon') as TfrxMemoView;
   //---------------------------------------------------------------
   PmemLastName.Text := Trim(edtLastName.Text);
   PmemFirstName.Text := Trim(edtFirstName.Text);
   PmemAddress.Text := Trim(edtAddress.Text);
   PmempCity.Text := Trim(edtCity.Text);
   PmempTelefon.Text := Trim(edtTelefon.Text);
  //----------------------------------------------------------------
  frxReport1.ShowReport();
end;

end.
Изображения
Тип файла: jpg Fastrep.jpg (41.5 Кб, 140 просмотров)
Вложения
Тип файла: rar MySQL_Fastreport.part01.rar (500.0 Кб, 9 просмотров)
Тип файла: rar MySQL_Fastreport.part02.rar (500.0 Кб, 7 просмотров)
Тип файла: rar MySQL_Fastreport.part03.rar (278.3 Кб, 10 просмотров)
xxbesoxx вне форума Ответить с цитированием
Старый 12.12.2015, 11:47   #16
Dux
Delphi Master
Форумчанин Подтвердите свой е-майл
 
Аватар для Dux
 
Регистрация: 31.03.2008
Сообщений: 803
По умолчанию

xxbesoxx, огромное спасибо за помощь!!! Буду разбираться!!
Dux вне форума Ответить с цитированием
Старый 12.12.2015, 12:39   #17
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Dux Пожалуйста
xxbesoxx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Генерация отчетов из Excel по шаблону Word Nicolas_46 Microsoft Office Excel 3 10.10.2013 20:28
Создание отчетов Ardarik БД в Delphi 13 23.05.2013 16:22
Создание анкет flyinsky Общие вопросы Delphi 0 12.05.2011 21:20
Создание отчетов WALL Помощь студентам 3 30.10.2010 22:09
Создание отчетов FaTaL Компоненты Delphi 4 10.05.2008 21:47