подсчитать количество записей с одинаковым кодом

Тема в разделе "Delphi - Базы данных", создана пользователем 4321, 12 ноя 2007.

Статус темы:
Закрыта.
  1. 4321

    4321 Гость

    короче прога где есть две таблицы в первой у меня разновидность продуктов и им присвоен код (к слову 1 2 и.т.д)
    во второй таблице у меня поставщики продуктов где вместо имени продукта указывается его код так вот мне нужно
    подсчитать количество продуктов с одинаковым кодом внезависимости поставщика и ответ вписывался в первую таблицу
    в ту сторуку где указан вид этого продукта. Тоисть считаются все продукты с кодом (например 9(а это кслову чипсы))
    во второй таблице а ответ выводится в первой таблице в строку где Кеу=9
     
  2. valentofer

    valentofer Active Member

    Регистрация:
    10 ноя 2007
    Сообщения:
    38
    Симпатии:
    0
    <!--QuoteBegin-4321+12:11:2007, 08:35 -->
    <span class="vbquote">(4321 @ 12:11:2007, 08:35 )</span><!--QuoteEBegin-->короче прога
    [snapback]85191" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Напиши по понятней!
     
  3. 4321

    4321 Гость

    программа склад мясокомбината там две таблицы в одной идет перечень имеющихся продуктов свинина говядина и.т.д а во второй таблице поставщики этих самых продуктов и когда я заполняю вторую таблицу вместо имени продукта я указываю его код тоисть к слову свинина в кеи у нее 5 я и указываю 5 во второй таблице после этого всего мне нужно чтоб прога брала всех поставщиков у которых поставлен продукт с кодом например 5(свинина) и считал количество всего поставленного от всех поставщиков а ответ выводил в таблицу 1 в строку где кеи = 5 (а это свинина) я это сделал чтоб видеть например сколько осталось свинины на складе вообщем вне зависимости поставщика
    вот такая головная боль за отклик огромное спс
     
  4. nataly_ukr

    nataly_ukr Гость

    Для 4321 ты хотя бы термины выучил прежде , чем писать программу Это элементарная складская программа Есть остатки на начало месяца От поставщиков приходит товар. Хранится во втором массиве . Вот 4321 нужно подсчитать сколько пришло товара за месяц по каждому коду - этот называется приход товара , Приход+ остатки на начало месяца - это наличие товара на складе , который можно реализовать.
    Прежде всего второй массиве нужно упорядочить по коду товара , а затем суммировать записи с одинаковым кодом И итоговую сумму записывать в 1 массив, найдя запись с нужным кодом из 2 массива.
    Код (Text):
     Form11.Query1.SQL.Add('Select * From MACCИB2  order by КОДТОВАРА');  //   У меня KFIO  - это КОД ТОвара

    rnom:=Form11.Query1.FieldByName('kfio').AsInteger;
    For i:=1 to Form1.Query1.RecordCount do
    begin
    if rnom=Form11.Query1.FieldByName('kfio').AsInteger then
    begin
    rsum:=rsum+Form11.Query1.FieldByName('zpsotr').AsFloat;
    Form11.Query1.Next;  
    end
    else
    begin
    Form10.Table1.Append;
    Form10.Table1.FieldByName('sum').AsFloat:=rsum;
    Form10.Table1.Post;
    it:=it+rsum;
    rsum:=0;
    rnom:=Form11.Query1.FieldByName('kfio').AsInteger;
    end;
    end;
    Form10.Table1.Append;
    Form10.Table1.FieldByName('sum').AsFloat:=rsum;
    Form10.Table1.Post;
    Посмотри идею и переделай для себя Может можно как-то и по-другому , , но это проще всего,
     
  5. 4321

    4321 Гость

    Для: nataly_ukr

    Огромное вам спасибо за такую большую помощ, я новичок, а точнее чайник учусь с того что могу достать в своем глупом городе.
    у меня к вам вопрос, это вписывать в SQL запрос, или как извините что беспокою вас
     
  6. nataly_ukr

    nataly_ukr Гость

    На форму помести кнопку например "Расчет" и привяжи к ее событию Click, этот кусок программы . Только там же еще есть компоненты Table и Query Начало программы:

    Form11.Table1.Active:=True;
    Form11.DataSource1.DataSet:=Query1;
    Form11.Query1.Close;
    Form11.Query1.Sql.Clear;

    И главное не паникуй , здесь все тебе расскажут Ну немного покритикуют , конечно Я тоже все находила в ините , все записывала в тетрадочку , может даже элементарное , но все пригодилось на каком-то этапе Так что спрашивай еще, если не понятно
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей