GET api/list return master/child tables

Is it possible from a GET api / list / return to master table as child tables?

Can you explain “master table as child tables”? Did you mean “master table AND child tables”? If so, no, I don’t think so, the “list” action is to get records from the specified table. But your code to call the API can get the master record’s primary key and use the “list” action for the detail table to search the detail table for detail records. See the topic REST API in the help file for details.

I understand, thank you very much for your feedback.

But in internet searches, I thought I could return a query in MSSQL in json format:SELECT A.CODEMP
,A.NOMEMP
,(SELECT B.CODFIL, B.NOMFIL FROM E070FIL B WHERE A.CODEMP = B.CODEMP FOR JSON PATH) ‘FILIAIS’
FROM E070EMP A FOR JSON PATHSo, my code in GlobalCode:$API_ACTIONS[“GetEmpresas”] = function(Request $request, Response &$response) {
$sql = ExecuteScalar("SELECT gcoligada.codcoligada
,gcoligada.nome
,(SELECT x.codfilial, x.nome FROM gfilial x WHERE gcoligada.codcoligada = x.codcoligada FOR JSON PATH) ‘FILIAIS’
FROM gcoligada
order by gcoligada.codcoligada FOR JSON PATH ");
print_r($sql); //
};but returns incomplete and in text format:[{“codcoligada”:0},{“codcoligada”:1,“nome”:“TOTVS SA”,“FILIAIS”:[{“codfilial”:1,“nome”:“TOTVS - Filial Belo Horizonte”},{“codfilial”:2,“nome”:“TOTVS - Filial Rio de Janeiro”},{“codfilial”:3,“nome”:“TOTVS - Filial SP”},{“codfilial”:4,“nome”:“TOTVS - Filial CE”},{“codfilial”:5,“nome”:“TOTVS - Filial PE”},{“codfilial”:6,“nome”:“TOTVS - Filial PR”},{“codfilial”:7,“nome”:“TOTVS - Filial BA”},{“codfilial”:8,“nome”:“TOTVS - Filial SC”},{“codfilial”:9,“nome”:“TOTVS - Filial PB”},{“codfilial”:10,“nome”:“TOTVS - Filial MT”},{“codfilial”:11,“nome”:“TOTVS - Filial MS”},{“codfilial”:12,“nome”:“TOTVS - Filial ES”},{“codfilial”:13,“nome”:“TOTVS - Filial Belém PA”},{“codfilial”:14,“nome”:“TOTVS - Filial Brasília”},{“codfilial”:15,“nome”:“TOTVS - Filial RS”},{“codfilial”:16,“nome”:“TOTVS - Filial RN”},{“codfilial”:17,“nome”:“TOTVS - Filial Sergipe”},{“codfilial”:18,“nome”:“TOTVS - Filial Joinville/Blumenau”},{“codfilial”:20,“nome”:“TOTVS - Filial Tocantins”},{“codfilial”:22,“nome”:“TOTVS - Filial Maceió”},{“codfilial”:23,“nome”:“TOTVS - Filial Amapá”},{“codfilial”:24,“nome”:“TOTVS - Filial Goiás”},{“codfilial”:25,“nome”:“TOTVS - Filial Apuração Simples Bahia”},{“codfilial”:26,“nome”:“TOTVS - Filial Apuração Simples São Paulo”},{“codfilial”:27,“nome”:“TOTVS - Filial Nota Fiscal Eletrônica”},{“codfilial”:28,“nome”:“LATICINIOS CONDESSA LTDA”}]},{“codcoligada”:6,“nome”:“INSTITUTO TOTVS DE ENSINO SA”,“FILIAIS”:[{“codfilial”:12,“nome”:“ESCOLA EXEMPLO 1”},{“codfilial”:14,“nome”:“ESCOLA EXEMPLO 2”}]},{“codcoligada”:7,“nome”:“INSTITUTO TOTVS DE ENSINO SUPERIOR SA”,“FILIAIS”:[{“codfilial”:1,“nome”:“Filial Belo Horizonte”},{“codfilial”:2,“nome”:“Filial Recife”},{“codfilial”:3,“nome”:“Filial Olinda”},{“codfilial”:4,“nome”:“Filial Recife Construção Civil”},{“codfilial”:5,“nome”:“Filial Belo Horizonte Construção Civil”},{“codfilial”:6,“nome”:“Filial São Luís”},{“codfilial”:8,“nome”:“Filial Salvador Construção Civil”},{“codfilial”:9,“nome”:“Rio de Janeiro Construção Civil”},{“codfilial”:10,“nome”:"Filial São Paulo Construção CivI put it at the beginning of the code: contentType = “application / json” but it doesn’t workI’ve already tried:WriteJson:
return:
"SELECT gcoligada.codcoligada \r\n\t\t\t\t\t\t,gcoligada.nome\r\n\t\t\t\t\t\t,(SELECT x.codfilial, x.nome FROM gfilial x WHERE gcoligada.codcoligada = x.codcoligada FOR JSON PATH) ‘FILIAIS’ \r\n\t\t\t\t\t\tFROM gcoligada\r\n\t\t\t\t\t\torder by gcoligada.codcoligada FOR JSON PATH "ExecuteJson:
return:
[
{
“JSON_F52E2B61-18A1-11d1-B105-00805F49916B”: “[{"codcoligada":0},{"codcoligada":1,"nome":"TOTVS SA","FILIAIS":[{"codfilial":1,"nome":"TOTVS - Filial Belo Horizonte"},{"codfilial":2,"nome":"TOTVS - Filial Rio de Janeiro"},{"codfilial":3,"nome":"TOTVS - Filial SP"},{"codfilial":4,"nome":"TOTVS - Filial CE"},{"codfilial":5,"nome":"TOTVS - Filial PE"},{"codfilial":6,"nome":"TOTVS - Filial PR"},{"codfilial":7,"nome":"TOTVS - Filial BA"},{"codfilial":8,"nome":"TOTVS - Filial SC"},{"codfilial":9,"nome":"TOTVS - Filial PB"},{"codfilial":10,"nome":"TOTVS - Fili”
},
{
“JSON_F52E2B61-18A1-11d1-B105-00805F49916B”: “il"},{"codfilial":11,"nome":"Filial Teresina"},{"codfilial":12,"nome":"Filial Teresina Construção Civil"},{"codfilial":13,"nome":"Filial Indaiatuba"},{"codfilial":14,"nome":"Filial Indaiatuba Construção Civil"},{"codfilial":15,"nome":"Filial Cabo de Santo Agostinho"},{"codfilial":16,"nome":"Filial Fortaleza"},{"codfilial":17,"nome":"Filial Rio de Janeiro"},{"codfilial":18,"nome":"Filial Natal"},{"codfilial":19,"nome":"Filial São Paulo"},{"codfilial":20,"nome":"Filial Juiz de Fora"},{"codfilial":21,"nom”
}
]ExecuteScalar with print_r(json_encode($sql));
return:
"[{"codcoligada":0},{"codcoligada":1,"nome":"TOTVS SA","FILIAIS":[{"codfilial":1,"nome":"TOTVS - Filial Belo Horizonte"},{"codfilial":2,"nome":"TOTVS - Filial Rio de Janeiro"},{"codfilial":3,"nome":"TOTVS - Filial SP"},{"codfilial":4,"nome":"TOTVS - Filial CE"},{"codfilial":5,"nome":"TOTVS - Filial PE"},{"codfilial":6,"nome":"TOTVS - Filial PR"},{"codfilial":7,"nome":"TOTVS - Filial BA"},{"codfilial":8,"nome":"TOTVS - Filial SC"},{"codfilial":9,"nome":"TOTVS - Filial PB"},{"codfilial":10,"nome":"TOTVS - Filial MT"},{"codfilial":11,"nome":"TOTVS - Filial MS"},{"codfilial":12,"nome":"TOTVS - Filial ES"},{"codfilial":13,"nome":"TOTVS - Filial Belém PA"},{"codfilial":14,"nome":"TOTVS - Filial Brasília"},{"codfilial":15,"nome":"TOTVS - Filial RS"},{"codfilial":16,"nome":"TOTVS - Filial RN"},{"codfilial":17,"nome":"TOTVS - Filial Sergipe"},{"codfilial":18,"nome":"TOTVS - Filial Joinville\/Blumenau"},{"codfilial":20,"nome":"TOTVS - Filial Tocantins"},{"codfilial":22,"nome":"TOTVS - Filial Maceió"},{"codfilial":23,"nome":"TOTVS - Filial Amapá"},{"codfilial":24,"nome":"TOTVS - Filial Goiás"},{"codfilial":25,"nome":"TOTVS - Filial Apuração Simples Bahia"},{"codfilial":26,"nome":"TOTVS - Filial Apuração Simples São Paulo"},{"codfilial":27,"nome":"TOTVS - Filial Nota Fiscal Eletrônica"},{"codfilial":28,"nome":"LATICINIOS CONDESSA LTDA"}]},{"codcoligada":6,"nome":"INSTITUTO TOTVS DE ENSINO SA","FILIAIS":[{"codfilial":12,"nome":"ESCOLA EXEMPLO 1"},{"codfilial":14,"nome":"ESCOLA EXEMPLO 2"}]},{"codcoligada":7,"nome":"INSTITUTO TOTVS DE ENSINO SUPERIOR SA","FILIAIS":[{"codfilial":1,"nome":"Filial Belo Horizonte"},{"codfilial":2,"nome":"Filial Recife"},{"codfilial":3,"nome":"Filial Olinda"},{"codfilial":4,"nome":"Filial Recife Construção Civil"},{"codfilial":5,"nome":"Filial Belo Horizonte Construção Civil"},{"codfilial":6,"nome":"Filial São Luís"},{"codfilial":8,"nome":"Filial Salvador Construção Civil"},{"codfilial":9,"nome":"Rio de Janeiro Construção Civil"},{"codfilial":10,"nome":"Filial São Paulo Construção Civ"when i execute my query in sql server:
return:
[
{
“codcoligada”: 0
},
{
“codcoligada”: 1,
“nome”: “TOTVS SA”,
“FILIAIS”: [
{
“codfilial”: 1,
“nome”: “TOTVS - Filial Belo Horizonte”
},
{
“codfilial”: 2,
“nome”: “TOTVS - Filial Rio de Janeiro”
},
{
“codfilial”: 3,
“nome”: “TOTVS - Filial SP”
},
{
“codfilial”: 4,
“nome”: “TOTVS - Filial CE”
},
{
“codfilial”: 5,
“nome”: “TOTVS - Filial PE”
},
{
“codfilial”: 6,
“nome”: “TOTVS - Filial PR”
},
{
“codfilial”: 7,
“nome”: “TOTVS - Filial BA”
},
{
“codfilial”: 8,
“nome”: “TOTVS - Filial SC”
},
{
“codfilial”: 9,
“nome”: “TOTVS - Filial PB”
},
{
“codfilial”: 10,
“nome”: “TOTVS - Filial MT”
},
{
“codfilial”: 11,
“nome”: “TOTVS - Filial MS”
},
{
“codfilial”: 12,
“nome”: “TOTVS - Filial ES”
},
{
“codfilial”: 13,
“nome”: “TOTVS - Filial Belém PA”
},
{
“codfilial”: 14,
“nome”: “TOTVS - Filial Brasília”
},
{
“codfilial”: 15,
“nome”: “TOTVS - Filial RS”
},
{
“codfilial”: 16,
“nome”: “TOTVS - Filial RN”
},
{
“codfilial”: 17,
“nome”: “TOTVS - Filial Sergipe”
},
{
“codfilial”: 18,
“nome”: “TOTVS - Filial Joinville/Blumenau”
},
{
“codfilial”: 20,
“nome”: “TOTVS - Filial Tocantins”
},
{
“codfilial”: 22,
“nome”: “TOTVS - Filial Maceió”
},
{
“codfilial”: 23,
“nome”: “TOTVS - Filial Amapá”
},
{
“codfilial”: 24,
“nome”: “TOTVS - Filial Goiás”
},
{
“codfilial”: 25,
“nome”: “TOTVS - Filial Apuração Simples Bahia”
},
{
“codfilial”: 26,
“nome”: “TOTVS - Filial Apuração Simples São Paulo”
},
{
“codfilial”: 27,
“nome”: “TOTVS - Filial Nota Fiscal Eletrônica”
},
{
“codfilial”: 28,
“nome”: “LATICINIOS CONDESSA LTDA”
}
]
},
{
“codcoligada”: 6,
“nome”: “INSTITUTO TOTVS DE ENSINO SA”,
“FILIAIS”: [
{
“codfilial”: 12,
“nome”: “ESCOLA EXEMPLO 1”
},
{
“codfilial”: 14,
“nome”: “ESCOLA EXEMPLO 2”
}
]
},
{
“codcoligada”: 7,
“nome”: “INSTITUTO TOTVS DE ENSINO SUPERIOR SA”,
“FILIAIS”: [
{
“codfilial”: 1,
“nome”: “Filial Belo Horizonte”
},
{
“codfilial”: 2,
“nome”: “Filial Recife”
},
{
“codfilial”: 3,
“nome”: “Filial Olinda”
},
{
“codfilial”: 4,
“nome”: “Filial Recife Construção Civil”
},
{
“codfilial”: 5,
“nome”: “Filial Belo Horizonte Construção Civil”
},
{
“codfilial”: 6,
“nome”: “Filial São Luís”
},
{
“codfilial”: 8,
“nome”: “Filial Salvador Construção Civil”
},
{
“codfilial”: 9,
“nome”: “Rio de Janeiro Construção Civil”
},
{
“codfilial”: 10,
“nome”: “Filial São Paulo Construção Civil”
},
{
“codfilial”: 11,
“nome”: “Filial Teresina”
},
{
“codfilial”: 12,
“nome”: “Filial Teresina Construção Civil”
},
{
“codfilial”: 13,
“nome”: “Filial Indaiatuba”
},
{
“codfilial”: 14,
“nome”: “Filial Indaiatuba Construção Civil”
},
{
“codfilial”: 15,
“nome”: “Filial Cabo de Santo Agostinho”
},
{
“codfilial”: 16,
“nome”: “Filial Fortaleza”
},
{
“codfilial”: 17,
“nome”: “Filial Rio de Janeiro”
},
{
“codfilial”: 18,
“nome”: “Filial Natal”
},
{
“codfilial”: 19,
“nome”: “Filial São Paulo”
},
{
“codfilial”: 20,
“nome”: “Filial Juiz de Fora”
},
{
“codfilial”: 21,
“nome”: “Filial Brasília”
},
{
“codfilial”: 22,
“nome”: “Filial Jaboatão”
},
{
“codfilial”: 23,
“nome”: “Filial Votuporanga”
},
{
“codfilial”: 24,
“nome”: “Filial Cascavel”
},
{
“codfilial”: 25,
“nome”: “Filial Santo André”
},
{
“codfilial”: 26,
“nome”: “Filial Belém”
},
{
“codfilial”: 27,
“nome”: “Filial Taboão da Serra”
},
{
“codfilial”: 28,
“nome”: “Filial Contagem”
},
{
“codfilial”: 29,
“nome”: “Filial São José do Rio Preto”
},
{
“codfilial”: 30,
“nome”: “Filial Sorocaba”
},
{
“codfilial”: 31,
“nome”: “Filial Maringá”
},
{
“codfilial”: 32,
“nome”: “Filial Cabo Frio”
},
{
“codfilial”: 33,
“nome”: “Filial São Leopoldo”
},
{
“codfilial”: 34,
“nome”: “Filial Cachoeiro de Itapemirim”
},
{
“codfilial”: 35,
“nome”: “Filial Morungaba”
},
{
“codfilial”: 36,
“nome”: “Filial Goiânia”
},
{
“codfilial”: 37,
“nome”: “Filial Patos de Minas”
},
{
“codfilial”: 38,
“nome”: “Filial São Francisco do Sul”
},
{
“codfilial”: 39,
“nome”: “Filial Porto Alegre”
},
{
“codfilial”: 40,
“nome”: “Filial Vila Velha”
},
{
“codfilial”: 41,
“nome”: “Filial Montes Claros”
},
{
“codfilial”: 42,
“nome”: “Filial Varginha”
},
{
“codfilial”: 43,
“nome”: “Filial Itaúna”
},
{
“codfilial”: 44,
“nome”: “Filial Itapecerica da Serra”
},
{
“codfilial”: 46,
“nome”: “Filial Itatiba”
},
{
“codfilial”: 47,
“nome”: “Filial Florianópolis”
}
]
}
]some help?