Wyrzuciłem to zapytanie z imessengers i poszło. Dziękuje za podpowiedź. Mam tu małą lokalną modyfikację i to było to.

pozdrawiam
Jacek

W dniu 2015-07-08 o 14:57, Maciej Lew pisze:

Wykonaj wewnętrzne zapytania SELECT i zobacz o które z nich chodzi. Podejrzanie wygląda to do tabeli imessengers.

08-07-2015 08:44, "Jacek Brzozowski" <j.brzozowski@marton.pl> napisał(a):
Witam serdecznie,

Przy próbie drukowania klientów przez KLIENCI/SZUKAJ, filtr "usunięci od 01/01/2015 do 31/01/2015" i wyborze grupy w której mam ponad 400 usuniętych klientów LMS wyrzuca błąd:

Napotkano błędy w bazie danych!
Zapytanie: SELECT c.id AS id, CONCAT(UPPER(lastname), ' ', c.name) AS customername, status, address, zip, city, countryid, countries.name AS country, email, ten, ssn, c.info AS info, message, c.divisionid, c.paytime AS paytime, COALESCE(b.value, 0) AS balance, COALESCE(t.value, 0) AS tariffvalue, s.account, s.warncount, s.online, c.type AS customertype, cutoffstop, (SELECT uid FROM imessengers WHERE imessengers.customerid = c.id) AS uid, (SELECT uid FROM imessengers WHERE imessengers.customerid = c.id) AS umowa, (SELECT max(cash.time) FROM cash WHERE cash.customerid = c.id) AS lastcash, (SELECT max(dateto) FROM assignments WHERE assignments.customerid = c.id) AS dateto, (CASE WHEN s.account = s.acsum THEN 1 WHEN s.acsum > 0 THEN 2 ELSE 0 END) AS nodeac, (CASE WHEN s.warncount = s.warnsum THEN 1 WHEN s.warnsum > 0 THEN 2 ELSE 0 END) AS nodewarn FROM customersview c LEFT JOIN countries ON (c.countryid = countries.id) LEFT JOIN customerassignments ON (c.id = customerassignments.customerid) JOIN customercash b ON (b.customerid = c.id) LEFT JOIN (SELECT a.customerid, SUM((CASE a.suspended WHEN 0 THEN (((100 - a.pdiscount) * (CASE WHEN t.value IS NULL THEN l.value ELSE t.value END) / 100) - a.vdiscount) ELSE ((((100 - a.pdiscount) * (CASE WHEN t.value IS NULL THEN l.value ELSE t.value END) / 100) - a.vdiscount) * 0 / 100) END) * (CASE t.period WHEN 3 THEN 1 WHEN 5 THEN 1/12.0 WHEN 7 THEN 1/6.0 WHEN 4 THEN 1/3.0 ELSE (CASE a.period WHEN 3 THEN 1 WHEN 5 THEN 1/12.0 WHEN 7 THEN 1/6.0 WHEN 4 THEN 1/3.0 ELSE 0 END) END) ) AS value FROM assignments a LEFT JOIN tariffs t ON (t.id = a.tariffid) LEFT JOIN liabilities l ON (l.id = a.liabilityid AND a.period != 0) WHERE (a.datefrom <= UNIX_TIMESTAMP() OR a.datefrom = 0) AND (a.dateto > UNIX_TIMESTAMP() OR a.dateto = 0) GROUP BY a.customerid ) t ON (t.customerid = c.id) LEFT JOIN (SELECT ownerid, SUM(access) AS acsum, COUNT(access) AS account, SUM(warning) AS warnsum, COUNT(warning) AS warncount, (CASE WHEN MAX(lastonline) > UNIX_TIMESTAMP() - 600 THEN 1 ELSE 0 END) AS online FROM nodes WHERE ownerid > 0 GROUP BY ownerid ) s ON (s.ownerid = c.id) LEFT JOIN imessengers im ON im.customerid = c.id WHERE c.deleted = 1 AND customergroupid=62 AND ((moddate >= 1420066800 AND moddate <= 1422745199)) ORDER BY customername asc
Błąd: Subquery returns more than 1 row

Problem występuje tylko z tą jedną grupą. Mam inne grupy z usuniętymi klientami i na tamtych grupach to działa. Nie mogę dojść co jest przyczyną. Macie jakieś pomysły ?

pozdrawiam
-- 
Jacek Brzozowski

_______________________________________________
lms mailing list
lms@lists.lms.org.pl
http://lists.lms.org.pl/mailman/listinfo/lms



_______________________________________________
lms mailing list
lms@lists.lms.org.pl
http://lists.lms.org.pl/mailman/listinfo/lms

-- 
Jacek Brzozowski
Marton Sp. z o.o.
Tel./fax: 56 683 31 91
www.marton.pl


Adres korespondencyjny:
87-400 Golub-Dobrzyń
ul. Żeromskiego 1/2
______________________________________________________________________
MARTON Sp. z o.o.  z siedzibą i adresem we Włocławku 87-800
przy ul. Brzeskiej 27/3, wpisana do Rejestru Przedsiębiorców
prowadzonego przez Sąd Rejonowy w Toruniu VII Wydział
Gospodarczy Krajowego Rejestru Sądowego pod numerem 0000274112;
REGON 340259542, NIP 503-00-32-757;
z pokrytym w całości kapitałem zakładowym wynoszącym 15.595.500,00 zł
_______________________________________________________________________
Treść tej wiadomości zawiera informacje przeznaczone tylko dla adresata.
Jeżeli nie jesteście Państwo jej adresatem, bądź otrzymaliście ją przez
pomyłkę, prosimy o powiadomienie nadawcy oraz trwałe jej usunięcie.