nessun record corrente

Anonimo
2025-02-21T15:39:32+00:00

Salve con la seguente query

SELECT diba_x_verifica_mrp_no.[Suffisso Materiale], diba_x_verifica_mrp_no.[Parte Materiale], diba_x_verifica_mrp_no.[Descrizione Componente], diba_x_verifica_mrp_no.data_agg, Count(diba_x_verifica_mrp_no.MRP) AS ConteggioDiMRP, anagrafica_materiali.check_doppione

FROM diba_x_verifica_mrp_no LEFT JOIN anagrafica_materiali ON (diba_x_verifica_mrp_no.[Suffisso Materiale] = anagrafica_materiali.[Suffisso Materiale]) AND (diba_x_verifica_mrp_no.[Parte Materiale] = anagrafica_materiali.[Parte Materiale])

GROUP BY diba_x_verifica_mrp_no.[Suffisso Materiale], diba_x_verifica_mrp_no.[Parte Materiale], diba_x_verifica_mrp_no.[Descrizione Componente], diba_x_verifica_mrp_no.data_agg, anagrafica_materiali.check_doppione

ORDER BY Count(diba_x_verifica_mrp_no.MRP) DESC;

ho il seguente errore

"nessun record corrente"

se invece cambio il tipo di query

SELECT diba_x_verifica_mrp_no.[Suffisso Materiale], diba_x_verifica_mrp_no.[Parte Materiale], diba_x_verifica_mrp_no.[Descrizione Componente], diba_x_verifica_mrp_no.data_agg, Count(diba_x_verifica_mrp_no.MRP) AS ConteggioDiMRP, anagrafica_materiali.check_doppione

FROM diba_x_verifica_mrp_no INNER JOIN anagrafica_materiali ON (diba_x_verifica_mrp_no.[Suffisso Materiale] = anagrafica_materiali.[Suffisso Materiale]) AND (diba_x_verifica_mrp_no.[Parte Materiale] = anagrafica_materiali.[Parte Materiale])

GROUP BY diba_x_verifica_mrp_no.[Suffisso Materiale], diba_x_verifica_mrp_no.[Parte Materiale], diba_x_verifica_mrp_no.[Descrizione Componente], diba_x_verifica_mrp_no.data_agg, anagrafica_materiali.check_doppione

ORDER BY Count(diba_x_verifica_mrp_no.MRP) DESC;

invece ho dei risultati

come mai? dov'è l'errore?

grazie

daniele serrai

Microsoft 365 e Office | Access | Per il lavoro | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

7 risposte

Ordina per: Più recente
  1. Anonimo
    2025-02-26T07:28:04+00:00

    E' opportuno avere i dati a disposizione per verificare direttamente il comportamento della query quindi dovresti postare i tre file.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2025-02-26T07:17:56+00:00

    ciao ANAGRAFICA MATERIALI è una tabella mentre  diba_x_verifica_mrp_no è la seguente query

    SELECT dibacommessa.[Suffisso Materiale], dibacommessa.[Parte Materiale], dibacommessa.[Descrizione Componente], First(dibacommessa.[Ente commessa]) AS [PrimoDiEnte commessa], IIf(IsNull([mat_nomrp]![Anno commessa]),0,-1) AS MRP, Date() AS data_agg

    FROM dibacommessa LEFT JOIN mat_nomrp ON (dibacommessa.[Suffisso Materiale] = mat_nomrp.[Suffisso Materiale]) AND (dibacommessa.[Parte Materiale] = mat_nomrp.[Parte Materiale]) AND (dibacommessa.[Ente commessa] = mat_nomrp.[Ente commessa]) AND (dibacommessa.[Anno commessa] = mat_nomrp.[Anno commessa])

    GROUP BY dibacommessa.[Suffisso Materiale], dibacommessa.[Parte Materiale], dibacommessa.[Descrizione Componente], IIf(IsNull([mat_nomrp]![Anno commessa]),0,-1), Date();

    dove dove DIBACOMESSA e MAT_NOMRP sono tue tabelle collegate a 2 file .txt

    grazie

    La risposta è stata utile?

    0 commenti Nessun commento
  3. domenico laurenza 9,900 Punti di reputazione Moderatore volontario
    2025-02-25T16:55:18+00:00

    Grazie Karl,

    stavo impazzendo proprio per lo stesso problema in una query a campi incrociati dove avevo una condizione proprio su un campo booleano che rispondeva ... in modo errato.

    Ho risolto eliminando la condizione nella query e cumulando il campo nell'intestazione colonna posticipando sul codice l'applicazione della condizione.

    Servus

    Mimmo

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2025-02-24T17:01:32+00:00

    Sì, dovresti postare un file di esempio.

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2025-02-24T10:38:52+00:00

    Salve,

    JET/ACE a volte ha un problema con i valori Null nei campi booleani. Questo si nota solo con gli OUTER JOIN, perché non è necessario che ci sia un record corrispondente nell'altra tabella. Se hai un campo sì/no nella query, prova invece con un'espressione come:

    iif([IlTuoCampoSìNo] Is Null; 0; [IlTuoCampoSìNo])

    o nel SQL con comma:

    iif([IlTuoCampoSìNo] Is Null, 0, [IlTuoCampoSìNo])

    Servus
    Karl
    ****************
    Access Forever News DevCon
    Access-Entwickler-Konferenz AEK

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento