DQL query (great circle distance)

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

Senior Developer ERP Dynamics 365

Samengevat: Deze werkgever is een softwarebedrijf. Ben jij een enthousiaste developer? Heb je ervaring met ERP of Dynamic 365 bussines central? Vaste baan: ERP Applicatie Specialist ERP MBO €3.600 - €5.200 Wij houden ons als bedrijf bezig met het leveren en implementeren van het Microsoft Dynamics pakket binnen verschillende industriële sectoren. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Binnen ons open team is er een no-nonsense cultuur. Daarnaast is er veel onderling contact door de korte communicatielijnen. Het team werkt enthousiast samen om een

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer!? Sta jij aan het begin van jouw loopbaan of heb jij misschien al enige ervaring? Vind jij het daarnaast belangrijk om jezelf constant te kunnen ontwikkelen en uitdagen? Lees dan snel verder! Voor een vooraanstaand softwarehuis in Nieuwegein ben ik op zoek naar een Junior Software Developer. De eigenaar van het bedrijf is ervan bewust dat je als junior nog een hoop kan leren, waardoor je de eerste maanden veel begeleiding en diverse trainingen krijgt. Daarna ga je samen met je collega's aan zowel kleine als grote projecten werken.

Bekijk vacature »

Lead javascript developer Node.js React

Functie Als fullstack JavaScript developer vind jij het uitdagend om op basis van concrete klantvragen nieuwe functionaliteiten te ontwikkelen. Bij voorkeur worden deze functionaliteiten op een bepaalde manier geprogrammeerd, zodat ze door meerdere klanten te gebruiken zijn. Je hebt dus vaak te maken met abstracte vraagstukken. Om dit te kunnen realiseren sta je nauw in contact met de product owner en/of klant. Je bent niet alleen onderdeel van het development team, maar hebt ook vaak contact met de product-owner en/of klanten om daardoor inzichten te verzamelen die leiden tot productverbeteringen. • Inzichten verzamelen bij de klant en/of product owner •

Bekijk vacature »

Lead Webdeveloper

As Lead Web Developer at KUBUS you are responsible for the implementation design of requirements and the software architecture of the web application and services of BIMcollab. In your role as lead developer you will naturally search for the optimum between the required implementation time, the performance of the application and a fast go-to-market of features, in line with our automated test and release train. Together with the other senior developers in your team you monitor the architecture of the application and you advise the product owner about necessary refactoring to improve the maintainability of the platform. Our development team

Bekijk vacature »

Magento2 Developer

Functie Ben jij een ontwikkelaar en wil jij een volgende stap zetten en als teamlead aan de slag? Lees dan snel verder! Voor een gewilde opdrachtgever in omgeving Delft zijn wij op zoek naar een programmeur die als meewerkend voorman aan de slag wilt gaan. Een developer die een team van twee man aan zal sturen. Jouw werkzaamheden zullen er als volgt uitzien; Ontwikkelen en ontwerpen van API's; Maatwerkoplossingen; Databeveiliging; Optimalisatie webshops; Ontwikkelen technische implementaties voor verbetering database; Aanspreekpunt voor de organisatie en verantwoordelijk voor de aansturing van externe developers. Zoek je veel uitdaging en veelzijdigheid in je werk dan

Bekijk vacature »

Junior Front end developer

Functie Jij als developer gaat ons helpen onze producten verder te ontwikkelen en in te zetten in de markt. Op dit moment bestaat ons SaaS product uit 3 componenten die zowel los als in een pakket gekocht kunnen worden. Het gaat hier om een online kaartapplicatie, een workflow tool en een monitoring tool. Momenteel zijn wij 3 jaar geleden gestart met de ontwikkeling. De tech-stack waarmee we werken is voornamelijk Javascript, Vue.js en Python. Daarnaast gebruiken wij FaundaDB als database en werken we veel met GIS applicaties. De uitdaging die we momenteel hebben is dat we momenteel een intern team

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

Frontend Developer - Leeuwarden

Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider in onderwijsland. Wat vragen

Bekijk vacature »

Web Application Developer

Dit ga je doen Samen met het team werk je aan de visualisatie functionaliteiten en hoe dit gebruikt kan worden in een operationele setting; Het ontwerpen, ontwikkelen, onderhouden en leveren van support betreft het Warehouse Management Systeem en de bijbehorende web visualisaties; Je gebruikt hierbijde tools WebGL en ASP.net; Het meewerken in implementatieprojecten; Het leveren van Go-Live Support; Sparren met jouw Amerikaanse collega's. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Web Application Developer. Ze zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

Mendix Consultant / Developer

Dit ga je doen Het in kaart brengen en analyseren van de functionele wensen van de klant rondom Mendix applicaties; Het fungeren als sparringpartner voor de (interne) klanten; Het opstellen van requirements en het vertalen hiervan naar technische mogelijkheden; Het opstellen van user stories; Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Het testen van op te leveren software en het zorg dragen voor de implementatie; Trainen van gebruikers in het gebruik van de applicatie; Werken in een Agile omgeving. Hier ga je werken De organisatie begeeft zich in de retail branche en focust zich

Bekijk vacature »

Software Developer C++ en Perl

Ben je een slimme en enthousiaste universitair opgeleide bèta die graag bij een relatief klein softwarebedrijf wil werken waar de sfeer goed is en eigen inbreng gewaardeerd wordt? Wij, IntelliMagic in Leiden, ontwikkelen technisch hoogwaardige software op het gebied van IT infrastructuur performance analytics. Het type software zorgt voor intellectueel interessante uitdagingen. We ontwerpen de producten zelf en verkopen deze als off-the-shelf software aan grote bedrijven in Europa en de VS. Wij zoeken een ervaren C++ software engineer met kennis van Perl voor een van onze ontwikkelteams. Werkzaamheden Samen met de andere ontwikkelaars specificeren, ontwerpen en implementeren van nieuwe functionaliteit

Bekijk vacature »

.NET Developer Microservices

Dit ga je doen Je taken zullen voornamelijk bestaan uit: Het ontwikkelen van software, inclusief vormgeving, implementaties, integraties en (automatisch) testen (.NET, C#, Azure, Docker, Microservices, Angular); Het in kaart brengen van software requirements; Zorgen dat jouw code kwalitatief hoogstaand is; Het uitvoeren van risico analyses; Een bijdrage leveren aan het continuous quality improvement process. Hier ga je werken Dat kanker een verschrikkelijke ziekte is die de wereld uit geholpen moet worden, is duidelijk. Binnen deze Gelderse organisatie die duizenden ziekenhuizen van producten voorziet, proberen ze daar via technische innovaties aan bij te dragen. Samen met 10 collega .NET developers

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »
Ama saril

ama saril

10/04/2015 10:24:19
Quote Anchor link
Hallo PHP mensen,
Ik heb de laatste tijd al wat vragen gesteld over symfony en dergelijke en ben nu met me laatste stukje bezig.

Ik heb een tabel met leerlingen naw gegevens. Hierin sla ik ook de Latitude en Longitude op (die haal ik op via de google api en dat gaat goed). Nu wil ik graag een query maken waarin ik namen van leerlingen ophaal binnen een bepaalde cirkel. Nu heb ik zo'n functie al is eerder gemaakt (zonder symfony) en probeer nu deze code te hergebruiken alleen loop ik tegen het probleem op dat ik de query niet goed uitgevoerd krijg.

De query die ik probeer te maken is het volgende (normaliter moeten bij de normale waarden die zijn ingevoerd natuurlijk parameters worden ingevoerd maar omdat ik even aan het testen ben of alles goed gaat heb ik ze handmatig ingevoerd)
<php
$dql = "
SELECT l.achternaam
FROM AppBundle:Leerling l
JOIN l.klas k
JOIN k.niveau n
WHERE (3959 * acos( cos( radians('52.1112102') ) * cos( radians( l.latitude ) )
* cos( radians( l.longitude )
- radians('5.0449914') )
+ sin( radians('52.1112102') )
* sin( radians( l.latitude ) ) ) < 75)";

?>
(Daarna voer ik hem natuurlijk uit en handel ik hem af net zoals ik al de andere queries afhandel. Mocht die code nuttig zijn om te zien zal ik hem later evt toevoegen)

Nu krijg ik een hele lange foutmelding als ik dit probeer uit te voeren. Waarvan het belangrijkste denk ik zijn 'Doctrine\ORM\Query\QueryException' en 'Doctrine\ORM\Query\QueryException::dqlError('SELECT l? ...')

Ik heb al een aantal dingen geprobeerd
- Getest of de 'JOINS' de foutmelding genereren dit is niet het geval want ie gingen gewoon goed (als ik het great circle distance formuletje weghaal)
- Ik heb de query 'apart' al in mysql getest en daar gaat ie goed (heb hem ook al in oude projecten gebruikt)
- In plaats van Kilomters miles geprobeerd te gebruiken maar dat heeft weinig effect.
- Om te testen een andere WHERE conditie geprobeerd (where l.naam = 'dijk') en dat ging ook goed.

Ik zit echt op dit moment vast waarom ik deze query niet werkend krijg en google geeft mij ook niet erg veel antwoorden. Kan iemand mij hier eventueel mee helpen?

alvast bedankt!

--edit quote aangepast (typo)--
Gewijzigd op 10/04/2015 11:09:22 door Ama saril
 
PHP hulp

PHP hulp

12/07/2025 15:15:01
 
Thomas van den Heuvel

Thomas van den Heuvel

10/04/2015 10:49:25
Quote Anchor link
quotes?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$dql
= "
SELECT "
l.achternaam ...
?>

Dit zou eigenlijk een parse error op moeten leveren?

Heb je je query wel eens rechtstreeks aan je database gevoerd, zonder tussenkomst van Doctrine?
 
Ama saril

ama saril

10/04/2015 11:08:51
Quote Anchor link
Ik had hem inderdaad al uitgevoerd in de database en daar werkt ie (Het quotje wat in jouw bericht verkeerd staat heb ik denk ik in het forum verkeerd geplaatst.
 
Thomas van den Heuvel

Thomas van den Heuvel

10/04/2015 11:11:49
Quote Anchor link
Welke database variant gebruik je?
Hoe luidt de volledige foutmelding?
Kun je meer code laten zien van hoe de query daadwerkelijk wordt uitgevoerd (je laat alleen de query-string zien in je codefragment)?
 
Ama saril

ama saril

10/04/2015 11:27:09
Quote Anchor link
Ik gebruik MySql als database
De volledige foutmelding komt altijd neer op deze (staat heel vaak onder elkaar)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
'Doctrine\ORM\Query\QueryException' with message 'SELECT l.achternaam FROM AppBundle:Leerling l JOIN l.klas k
JOIN k.niveau n WHERE (3959 * acos( cos( radians('52.1112102') ) * cos( radians( l.latitude ) ) * cos( radians( l.longitude ) - radians('5.0449914') ) + sin( radians('52.1112102') ) * sin( radians( l.latitude ) ) ) < 75)' C:\xampp\htdocs\TestProjecten\leerlingproject\vendor\doctrine\orm\lib\Doctrine\ORM\Query\QueryException.php:41'


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Next exception 'Doctrine\ORM\Query\QueryException' with message '[Syntax Error] line 0, col 224: Error: Expected known function, got 'acos'' in C:\xampp\htdocs\TestProjecten\leerlingproject\vendor\doctrine\orm\lib\Doctrine\ORM\Query\QueryException.php:52



De query wordt alsvolgt uitgevoerd (ik heb al meerdere functies op dezelfde manier gemaakt die wel goed. Als ik zegmaar het where statement verander naar "WHERE l.achternaam = 'dijk'" dan doet hij het gewoon helemaal goed en krijg ik de resultaten die ik wil
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
$dql = "SELECT l.achternaam
FROM AppBundle:Leerling l
JOIN l.klas k
JOIN k.niveau n
WHERE (3959 * acos( cos( radians('52.1112102') ) * cos( radians( l.latitude ) )
* cos( radians( l.longitude )
- radians('5.0449914') )
+ sin( radians('52.1112102') )
* sin( radians( l.latitude ) ) ) < 75)";          
            $query = $this->getEntityManager()->createQuery($dql)                      
                       ->setMaxResults(10);
            $paginas = new Paginator($query, $fetchJoinCollection = true);            
            return $paginas;


-- code tag geplaatst --
Gewijzigd op 10/04/2015 11:29:38 door ama saril
 
Thomas van den Heuvel

Thomas van den Heuvel

10/04/2015 11:33:23
Quote Anchor link
Door middel van [code]je code[/code].

Tevens, een Google search op "doctrine Error: Expected known function" geeft je het antwoord:
#1
#2
 
Ama saril

ama saril

10/04/2015 11:50:26
Quote Anchor link
Ah bedankt, heb eerlijk gezegd op google meer zitten zoeken naar 'foute queries'. Ik ga even proberen uit te zoeken hoe ik dan ACOS (en waarschijnlijk ook radius) kan implementeren binnen symfony. Bedankt in ieder geval.

Toevoeging op 10/04/2015 14:29:38:

Ik post hier even mijn oplossing voor het geval anderen tegen hetzelfde aanlopen.
Ik heb de benodigde extensies van de volgende locatie gehaald:
https://github.com/beberlei/DoctrineExtensions

Dat zijn dus de acos, cos, sin en radians functies.
Deze heb ik onder mijn appBundle in een folder geplaatst (DoctrineExtensions\Query\Mysql)

in autoload.php (in de map /app) heb ik de volgende regels toegevoegd:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$classLoader = new \Doctrine\Common\ClassLoader(
                        'DoctrineExtensions', __DIR__."/../src/AppBundle"
                        );
$classLoader->register();


En als laatste heb ik de bestanden geregistreerd in het config.yml bestand (onder orm):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
dql:
            datetime_functions:                
            numeric_functions:
                acos: DoctrineExtensions\Query\Mysql\Acos
                cos: DoctrineExtensions\Query\Mysql\Cos
                radians: DoctrineExtensions\Query\Mysql\Radians
                sin: DoctrineExtensions\Query\Mysql\Sin
            string_functions:              


Bedankt voor de hulp!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.