Topic: Следующий номер

Добрый день!
Подскажите, как можно сделать, чтобы при копировании записи в таблице к номеру прибавлялась единица. Например: в записи есть поле "номер талона", при нажатии кнопки "Новая запись" открывается другая форма и в поле "Номер талона" хотелось бы, чтобы выводился номер талона (последний + 1). Спасибо!

Re: Следующий номер

Привет, Vickus
Есть ли причина, по которой вы не можете использовать тип поля «счетчик»?
Derek.

Post's attachments

Attachment icon counter.jpg 28.55 kb, 29 downloads since 2023-05-02 

Re: Следующий номер

derek wrote:

Привет, Vickus
Есть ли причина, по которой вы не можете использовать тип поля «счетчик»?
Derek.

Спасибо, разобрался.

Derek, помогите, пожалуйста, в очередной раз.
Как можно сделать следующее?
На форме 2 комбибокса. Допустим, в первом список 1. "русский", 2. "удмуртский". Во втором, также допустим, 1. "понимаю", 2. "воломон".
Если выбрать в первом комбибоксе русский, то при выборе во втором комбибоксе "понимаю", ничего не происходит, а если выбрать "воломон", то должно выйти сообщение "Значения не соответствуют". Если же выбрать в первом "удмуртский", а во втором "воломон" - все хорошо продолжает работать, а если "понимаю", то такое же окно с сообщением. Спасибо!

4 (edited by pavlenko.vladimir.v 2023-05-02 11:42:26)

Re: Следующий номер

Hello Derek, Vickus

Vickus wrote:
derek wrote:

Привет, Vickus
Есть ли причина, по которой вы не можете использовать тип поля «счетчик»?
Derek.

Спасибо, разобрался.

Derek, помогите, пожалуйста, в очередной раз.
Как можно сделать следующее?
На форме 2 комбибокса. Допустим, в первом список 1. "русский", 2. "удмуртский". Во втором, также допустим, 1. "понимаю", 2. "воломон".
Если выбрать в первом комбибоксе русский, то при выборе во втором комбибоксе "понимаю", ничего не происходит, а если выбрать "воломон", то должно выйти сообщение "Значения не соответствуют". Если же выбрать в первом "удмуртский", а во втором "воломон" - все хорошо продолжает работать, а если "понимаю", то такое же окно с сообщением. Спасибо!

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.ItemIndex = 1) AND (Form1.ComboBox2.ItemIndex = 1) then else ShowMessage('Значения не соответствуют');

end;

procedure Form1_OnShow (Sender: TObject; Action: string);
begin
  Form1.ComboBox1.Items.Add('Русский');
  Form1.ComboBox1.Items.Add('Удмуртский');

  Form1.ComboBox2.Items.Add('Понимаю');
  Form1.ComboBox2.Items.Add('Воломон');
end;

begin

end.
Post's attachments

Attachment icon test.rar 2.64 kb, 75 downloads since 2023-05-02 

Re: Следующий номер

pavlenko.vladimir.v wrote:

Hello Derek, Vickus

Vickus wrote:
derek wrote:

Привет, Vickus
Есть ли причина, по которой вы не можете использовать тип поля «счетчик»?
Derek.

Спасибо, разобрался.

Derek, помогите, пожалуйста, в очередной раз.
Как можно сделать следующее?
На форме 2 комбибокса. Допустим, в первом список 1. "русский", 2. "удмуртский". Во втором, также допустим, 1. "понимаю", 2. "воломон".
Если выбрать в первом комбибоксе русский, то при выборе во втором комбибоксе "понимаю", ничего не происходит, а если выбрать "воломон", то должно выйти сообщение "Значения не соответствуют". Если же выбрать в первом "удмуртский", а во втором "воломон" - все хорошо продолжает работать, а если "понимаю", то такое же окно с сообщением. Спасибо!

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.ItemIndex = 1) AND (Form1.ComboBox2.ItemIndex = 1) then else ShowMessage('Значения не соответствуют');

end;

procedure Form1_OnShow (Sender: TObject; Action: string);
begin
  Form1.ComboBox1.Items.Add('Русский');
  Form1.ComboBox1.Items.Add('Удмуртский');

  Form1.ComboBox2.Items.Add('Понимаю');
  Form1.ComboBox2.Items.Add('Воломон');
end;

begin

end.

Спасибо за оперативность и пример!
А если в комбобоксах увеличатся записи? Например, к русскому из первого бокса добавить еще несколько соответствий из второго?

Re: Следующий номер

Vickus wrote:

Спасибо за оперативность и пример!
А если в комбобоксах увеличатся записи? Например, к русскому из первого бокса добавить еще несколько соответствий из второго?

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.Text = 'Удмуртский') AND (Form1.ComboBox2.Text = 'Воломон') then else ShowMessage('Значения не соответствуют');
end;

7 (edited by Vickus 2023-05-02 12:06:33)

Re: Следующий номер

pavlenko.vladimir.v wrote:
Vickus wrote:

Спасибо за оперативность и пример!
А если в комбобоксах увеличатся записи? Например, к русскому из первого бокса добавить еще несколько соответствий из второго?

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.Text = 'Удмуртский') AND (Form1.ComboBox2.Text = 'Воломон') then else ShowMessage('Значения не соответствуют');
end;

Re: Следующий номер

Vickus wrote:
pavlenko.vladimir.v wrote:
Vickus wrote:

Спасибо за оперативность и пример!
А если в комбобоксах увеличатся записи? Например, к русскому из первого бокса добавить еще несколько соответствий из второго?

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.Text = 'Удмуртский') AND (Form1.ComboBox2.Text = 'Воломон') then else ShowMessage('Значения не соответствуют');
end;

Прошу прощения, но не могли бы Вы приложить пример. Не получается :-( В моем случае в первом комбобоксе два значения, а во втором десятки


procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.Text = 'Удмуртский') AND (Form1.ComboBox2.Text = 'Воломон') then else ShowMessage('Значения не соответствуют');
end;

procedure Form1_OnShow (Sender: TObject; Action: string);
begin
  Form1.ComboBox1.Items.Add('Русский');
  Form1.ComboBox1.Items.Add('Удмуртский');


  Form1.ComboBox2.Items.Add('Понимаю');
  Form1.ComboBox2.Items.Add('Воломон');
  Form1.ComboBox2.Items.Add('Тосько');
  Form1.ComboBox2.Items.Add('Знаю');
  Form1.ComboBox2.Items.Add('Делаю');
end;

begin

end.

Re: Следующий номер

Vickus wrote:

Прошу прощения, но не могли бы Вы приложить пример. Не получается :-( В моем случае в первом комбобоксе два значения, а во втором десятки

Проверил, работает

Post's attachments

Attachment icon test_2.rar 2.78 kb, 78 downloads since 2023-05-02 

Re: Следующий номер

pavlenko.vladimir.v wrote:
Vickus wrote:

Прошу прощения, но не могли бы Вы приложить пример. Не получается :-( В моем случае в первом комбобоксе два значения, а во втором десятки

Проверил, работает


Возможно я не очень ясно объясняю. Ммм, необходимо, чтобы при выборе в первом боксе "русский", а во втором боксе не было реакций на выбор русских слов. Но если в первом боксе установлен "русский", а во втором выбрать любое удмуртское - выходило бы сообщение о несоответствии. И наоборот, при выборе в первом боксе "удмуртский", соощение должно выходить при выборе во втором слов на русском языке.

Re: Следующий номер

Vickus wrote:

Возможно я не очень ясно объясняю. Ммм, необходимо, чтобы при выборе в первом боксе "русский", а во втором боксе не было реакций на выбор русских слов. Но если в первом боксе установлен "русский", а во втором выбрать любое удмуртское - выходило бы сообщение о несоответствии. И наоборот, при выборе в первом боксе "удмуртский", соощение должно выходить при выборе во втором слов на русском языке.

var
UdWord: string;

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (Form1.ComboBox1.Text = 'Удмуртский') AND (UdmurtWord(Form1.ComboBox2.Text)) then else ShowMessage('Значения не соответствуют');
end;

procedure Form1_OnShow (Sender: TObject; Action: string);
begin
  Form1.ComboBox1.Items.Add('Русский');
  Form1.ComboBox1.Items.Add('Удмуртский');

  Form1.ComboBox2.Items.Add('Понимаю');
  Form1.ComboBox2.Items.Add('Воломон');
  Form1.ComboBox2.Items.Add('Тосько');
  Form1.ComboBox2.Items.Add('Знаю');
  Form1.ComboBox2.Items.Add('Делаю');

  UdWord := 'Воломон, Тосько';
end;

function UdmurtWord (Word: string): Boolean;
var
i:integer;
begin
  if ( pos(Word,UdWord)) then Result := True else Result := False;
end;


begin

end.
Post's attachments

Attachment icon test_3.rar 3.17 kb, 82 downloads since 2023-05-02 

Re: Следующий номер

Спасибо! Все работает. Только подскажите, как добавить соответствие со вторым значением из первого комбобокса, т.е. при выборе "Русский", чтобы он выдавал сообщение на удмуртские слова?

Re: Следующий номер

Vickus wrote:

Спасибо! Все работает. Только подскажите, как добавить соответствие со вторым значением из первого комбобокса, т.е. при выборе "Русский", чтобы он выдавал сообщение на удмуртские слова?


var
UdWord,RuWord: string;

procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
  if (UdmurtWord(Form1.ComboBox2.Text)) then else ShowMessage('Значения не соответствуют');
end;

procedure Form1_OnShow (Sender: TObject; Action: string);
begin
  Form1.ComboBox1.Items.Add('Русский');
  Form1.ComboBox1.Items.Add('Удмуртский');

  Form1.ComboBox2.Items.Add('Понимаю');
  Form1.ComboBox2.Items.Add('Воломон');
  Form1.ComboBox2.Items.Add('Тосько');
  Form1.ComboBox2.Items.Add('Знаю');
  Form1.ComboBox2.Items.Add('Делаю');

  UdWord := 'Воломон, Тосько';
  RuWord := 'Понимаю, Знаю, Делаю';
end;

function UdmurtWord (Word: string): Boolean;
var
i:integer;
begin
  if (Form1.ComboBox1.Text = 'Удмуртский') then
    if (pos(Word,UdWord)) then Result := True else Result := False;
  if (Form1.ComboBox1.Text = 'Русский') then
    if (pos(Word,RuWord)) then Result := True else Result := False;
end;


begin

end.
Post's attachments

Attachment icon test_4.rar 3.4 kb, 98 downloads since 2023-05-02 

Re: Следующий номер

СПАСИБО БОЛЬШОЕ! ВСЕ РАБОТАЕТ!

Re: Следующий номер

Привет Vickus, Vladimir,
Есть ли причина, по которой вы не можете использовать функцию 'parent combobox' - это предотвратит возникновение проблемы (см. Приложение 4a).
Или попробуйте как приложение 4б.
Оба вложения управляются данными, поэтому пользователь может управлять языками и словами.
Derek.
.
Is there a reason why you cannot use the 'parent combobox' function - that would stop the problem from occurring (see attachment 4a).
Or try it like attachment 4b.
Both attachments are data-driven so the user can control the languages and words.

Post's attachments

Attachment icon vickus comboboxes.zip 874.98 kb, 96 downloads since 2023-05-02