How to write a GraphQL request with date between
# support
c
It was suggested I try this approach { DiagnosticReportList(subject: "${patientRef}", date_gt: "${formatISO(date)}", date_lt: "${formatISO(addDays(date, 1))}") { ... } } But that is not working. I get the following errors: [ { "severity": "error", "code": "invalid", "details": { "text": "Unknown argument \"date_gt\" on field \"QueryType.DiagnosticReportConnection\". Did you mean \"date\"?" } }, { "severity": "error", "code": "invalid", "details": { "text": "Unknown argument \"date_lt\" on field \"QueryType.DiagnosticReportConnection\". Did you mean \"date\"?" } } ]
I've also tried reports: DiagnosticReportConnection( subject: "${patientRef}", date: "gt${formatISO(date)}<${formatISO(addDays(date, 1)}" ) {...} without success
r
Still working on "between" but just testing this gt and it works { DiagnosticReportConnection( issued: "gt2022-02-01" _count: 100 ) { count edges { resource { id issued category { coding { code } } code { coding { code } } specimen { resource { ... on Specimen { collection { collectedDateTime } receivedTime } } } subject { resource { ... on Patient { id gender address { state } } } } } } } }
c
@reshma Yes - I can get it to work with just one also - I need both though
r
Ok - just tested this { DiagnosticReportConnection( _filter:"issued gt \"2022-01-01\" and issued lt \"2024-02-01\"" _count: 100 ) { count edges { resource { id issued category { coding { code } } code { coding { code } } specimen { resource { ... on Specimen { collection { collectedDateTime } receivedTime } } } subject { resource { ... on Patient { id gender address { state } } } } } } } }
c
@reshma you are amazing! Thank you!
@reshma I keep getting "Unknown argument _filter on field QueryType.AppointmentConnection." when I try and use _filter
Any advice?
r
Can you send the permalink of the Graphiql like above? That will help me find out what's going on
c
I'm using a self hosted version
https://graphiql.medplum.com/?query=ewogICAgQXBwb2ludG1lbnRDb25uZWN0aW9uKAogICAgICBfZmlsdGVyOiAiZGF0ZSBnZSAnJHtmb3JtYXRJU08oc3RhcnRPZk1vbnRoKGRhdGUpKX0nIGFuZCBkYXRlIGxlICcke2Zvcm1hdElTTyhlbmRPZk1vbnRoKGRhdGUpKX0nIiwKICAgICkgewogICAgICBlZGdlcyB7CiAgICAgICAgcmVzb3VyY2UgewogICAgICAgICAgaWQKICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICBzdGFydAogICAgICAgICAgZW5kCiAgICAgICAgICBtaW51dGVzRHVyYXRpb24KICAgICAgICAgIGNyZWF0ZWQKICAgICAgICAgIGNvbW1lbnQKICAgICAgICAgIHBhdGllbnRJbnN0cnVjdGlvbgogICAgICAgICAgcGFydGljaXBhbnQgewogICAgICAgICAgICAuLi4gb24gQXBwb2ludG1lbnRQYXJ0aWNpcGFudCB7CiAgICAgICAgICAgICAgYWN0b3IgewogICAgICAgICAgICAgICAgcmVmZXJlbmNlCiAgICAgICAgICAgICAgICByZXNvdXJjZSB7CiAgICAgICAgICAgICAgICAgIC4uLiBvbiBQYXRpZW50IHsKICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGUKICAgICAgICAgICAgICAgICAgICBpZAogICAgICAgICAgICAgICAgICAgIG5hbWUgewogICAgICAgICAgICAgICAgICAgICAgZ2l2ZW4KICAgICAgICAgICAgICAgICAgICAgIGZhbWlseQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBwaG90byB7CiAgICAgICAgICAgICAgICAgICAgICBjb250ZW50VHlwZQogICAgICAgICAgICAgICAgICAgICAgdXJsCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIC4uLiBvbiBQcmFjdGl0aW9uZXIgewogICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZQogICAgICAgICAgICAgICAgICAgIGlkCiAgICAgICAgICAgICAgICAgICAgbmFtZSB7CiAgICAgICAgICAgICAgICAgICAgICBnaXZlbgogICAgICAgICAgICAgICAgICAgICAgZmFtaWx5CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHBob3RvIHsKICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRUeXBlCiAgICAgICAgICAgICAgICAgICAgICB1cmwKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9&variables=&operationName=
https://graphiql.medplum.com/?query=ewogICAgQXBwb2ludG1lbnRDb25uZWN0aW9uKAogICAgICBfZmlsdGVyOiAiZGF0ZSBnZSAnMjAyMy0wOS0wMVQwMDowMDowMC0wNDowMCcgYW5kIGRhdGUgbGUgJzIwMjMtMDktMzBUMjM6NTk6NTktMDQ6MDAnIiwKICAgICkgewogICAgICBlZGdlcyB7CiAgICAgICAgcmVzb3VyY2UgewogICAgICAgICAgaWQKICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICBzdGFydAogICAgICAgICAgZW5kCiAgICAgICAgICBtaW51dGVzRHVyYXRpb24KICAgICAgICAgIGNyZWF0ZWQKICAgICAgICAgIGNvbW1lbnQKICAgICAgICAgIHBhdGllbnRJbnN0cnVjdGlvbgogICAgICAgICAgcGFydGljaXBhbnQgewogICAgICAgICAgICAuLi4gb24gQXBwb2ludG1lbnRQYXJ0aWNpcGFudCB7CiAgICAgICAgICAgICAgYWN0b3IgewogICAgICAgICAgICAgICAgcmVmZXJlbmNlCiAgICAgICAgICAgICAgICByZXNvdXJjZSB7CiAgICAgICAgICAgICAgICAgIC4uLiBvbiBQYXRpZW50IHsKICAgICAgICAgICAgICAgICAgICByZXNvdXJjZVR5cGUKICAgICAgICAgICAgICAgICAgICBpZAogICAgICAgICAgICAgICAgICAgIG5hbWUgewogICAgICAgICAgICAgICAgICAgICAgZ2l2ZW4KICAgICAgICAgICAgICAgICAgICAgIGZhbWlseQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBwaG90byB7CiAgICAgICAgICAgICAgICAgICAgICBjb250ZW50VHlwZQogICAgICAgICAgICAgICAgICAgICAgdXJsCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIC4uLiBvbiBQcmFjdGl0aW9uZXIgewogICAgICAgICAgICAgICAgICAgIHJlc291cmNlVHlwZQogICAgICAgICAgICAgICAgICAgIGlkCiAgICAgICAgICAgICAgICAgICAgbmFtZSB7CiAgICAgICAgICAgICAgICAgICAgICBnaXZlbgogICAgICAgICAgICAgICAgICAgICAgZmFtaWx5CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHBob3RvIHsKICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRUeXBlCiAgICAgICAgICAgICAgICAgICAgICB1cmwKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9&variables=&operationName=
But even if I run your code from yesterday I'm now getting the same error
[ { "severity": "error", "code": "invalid", "details": { "text": "Unknown argument \"_filter\" on field \"QueryType.DiagnosticReportConnection\"." } } ]
Even this simple one gives me the same error about _filter
c
Hi @codey1416 - I just verified that the "_filter" does work with "DiagnosticReportConnection":
Copy code
{
  DiagnosticReportConnection(_filter: "issued gt '2023-11-01'") {
    count offset pageSize
    edges {
      resource {
        resourceType
        id
      }
    }
  }
}
Your "AppointmentConnection" query also works for me (see screenshot). For your self hosted: which version of Medplum are you using? The GraphQL Connection API was released in version 2.0.18 in April 2023: https://github.com/medplum/medplum/pull/1934 For the error that you received on https://graphiql.medplum.com can you please send a copy of the error message? One possibility for consideration is that the error messages for invalid
_filter
strings can be confusing (something we need to work on), so it can easily be misinterpreted as "_filter" not being supported.
156 Views