Topic: Агрегатные фунукции

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

Re: Агрегатные фунукции

vladimirmir2012 wrote:

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

загрузите проект

3 (edited by vladimirmir2012 2021-07-31 04:59:38)

Re: Агрегатные фунукции

Проект не мой, поэтому не могу его прислать ...

Post's attachments

Attachment icon УчетИРегистрацияАктовСлужбыРемонта.fr3 16.53 kb, 170 downloads since 2021-07-31 

Re: Агрегатные фунукции

И еще

select    Prosmotr.id, 
           1 as Один,   
           strftime( '%d-%m-%Y', Prosmotr.ДатаРегистрации) as ДатаРегистрации,
           VidRemonta.ВидРемонта,         
           ImyaObjekt.ИмяОбъекта,   
           Podrazdelenie.ВидПодраз,   
           Prosmotr.НомерАкта,       
           Prosmotr.ИнвНомер,                             
           Prosmotr.ВидРабот,         
           Prosmotr.ИмяОборуд,                       
           Prosmotr.Шифр,                                     
           Prosmotr.Сумма,                 
           Prosmotr.Авария,                               
           Prosmotr.Коментарий,       
           Prosmotr.Pictures,         
           Prosmotr.Pictures_filename,

           ( SELECT  trubodeam
             FROM    trubodeam           
             WHERE   trubodeam.id = Diametr.id_trubodeam
             LIMIT 30 OFFSET 0
           )                               AS trubodeam,
                   
           Diametr.Protiazonnost,               
           Diametr.SUMM,       
       
           Prosmotr.RabpoformKB, 
           
           Prosmotr.ZPLATAKB2,
           ( Prosmotr.RabpoformKB + Prosmotr.ZPLATAKB2 ) AS Трудозатраты,       
                     
           Prosmotr.Ploshad                                                                 
                                       
from      Prosmotr
             
           LEFT OUTER JOIN VidRemonta    ON VidRemonta.id    = Prosmotr.id_VidRemonta   
           LEFT OUTER JOIN ImyaObjekt    ON ImyaObjekt.id    = Prosmotr.id_ImyaObjekt     
           LEFT OUTER JOIN Podrazdelenie ON Podrazdelenie.id = Prosmotr.id_Podrazdelenie   

           LEFT OUTER JOIN Diametr ON Diametr.id_Prosmotr = Prosmotr.id
                   
  WHERE    Date( Prosmotr.ДатаРегистрации ) <= Date( {DateTimePicker2} ) AND
           Date( Prosmotr.ДатаРегистрации ) >= Date( {DateTimePicker1} )

ORDER BY  Prosmotr.ДатаРегистрации,
           Prosmotr.ИнвНомер

5 (edited by sibprogsistem 2021-07-31 05:59:47)

Re: Агрегатные фунукции

файл отчета не поможет, нужен сам проект, без него отчет не сформируется ..

Re: Агрегатные фунукции

На <Report."Один"> + 123) ругается
Memo35: Could not convert variant of type (UnicodeString) into type (Double)

Похоже select    1 as Один,  ... формирует источник, содержащий UnicodeString

Re: Агрегатные фунукции

CREATE TABLE "Prosmotr" (

id                  INTEGER PRIMARY KEY ASC AUTOINCREMENT,
[record_count]      INTEGER,
[ДатаРегистрации]   TEXT,
[id_VidRemonta]     INTEGER,
[id_ImyaObjekt]     INTEGER,
[id_Podrazdelenie]  INTEGER,
[НомерАкта]         TEXT,
[ИнвНомер]          TEXT,
[ВидРабот]          TEXT,
[ИмяОборуд]         TEXT,
[Шифр]              TEXT,
[Сумма]             REAL,
[Авария]            INTEGER,
[Коментарий]        TEXT,
[Pictures]          BLOB,
[Pictures_filename] TEXT,
[id_Diametr]        INTEGER,
[RabpoformKB]       REAL,
[ZPLATAKB2]         REAL,
[Ploshad]           REAL,
[File]              BLOB,
[File_filename]     TEXT,
[itogo]             REAL,

FOREIGN KEY([id_VidRemonta])    REFERENCES [VidRemonta](id),
FOREIGN KEY([id_ImyaObjekt])    REFERENCES [ImyaObjekt](id),
FOREIGN KEY([id_Podrazdelenie]) REFERENCES [Podrazdelenie](id),
FOREIGN KEY([id_Diametr])       REFERENCES [Diametr](id)

)

Re: Агрегатные фунукции

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


Используйте теперь везде такие кавычки для выделения полей в запросах:  `

Визуальное программирование: блог и телеграм-канал.