Mājas / logu pārskats / Pieprasīt konsole 1s 8.3 pārvaldītās veidlapas. Darbs ar vaicājumu konsoli

Pieprasīt konsole 1s 8.3 pārvaldītās veidlapas. Darbs ar vaicājumu konsoli

Vaicājumu konsole ir ļoti ērta lietošanai, ja nepieciešams atkļūdot kādu kompleksu vai ātri iegūt noteiktu datu atlasi.

Internetā var atrast daudz dažādu konsoļu. Parastajām un pārvaldītajām formām tās parasti ir pilnīgi atšķirīgas konsoles. Saskaņā ar to jūs varat lejupielādēt universālo vaicājumu konsoli 1C 8.3 un 8.2, kas darbosies abos gadījumos. Vienkārši paturiet prātā, ka konsole ir ieslēgta pārvaldīts interfeiss jūs atvērsit tikai biezā klientā.

Darbs ar vaicājumu konsoli

Programmā 1C vaicājumu konsole tiek atvērta tāpat kā jebkura ārējā apstrāde: izvēlne "Fails" - "Atvērt" vai izmantojot karsto taustiņu kombināciju "Ctrl + O". Bieži lietojot, to var pievienot ārējai apstrādei informācijas bāze.

Jūsu pieprasījumu saraksts tiek parādīts pieprasījumu konsoles kreisajā pusē. Tas ļauj saglabāt ne tikai vienu pieprasījumu, bet vairākus vienlaikus. Vaicājumu kokam ir hierarhiska struktūra, kas ir ļoti ērta to grupēšanai.

Noklikšķinot uz pogas "Pievienot", varat pievienot jaunu pieprasījumu, pats piešķirot tam nosaukumu. Turklāt iebūvētā funkcionalitāte ļauj izveidot vaicājumus ar kopēšanu, pārvietoties uz augšu vai uz leju sarakstā un daudz ko citu.

Pats pieprasījuma teksts tiek parādīts apstrādes veidlapas labajā pusē. To var rakstīt manuāli vai izmantojot vaicājumu veidotāju. Vaicājumu veidotājs darbojas tikai biezajā klientā.

Pa labi no konstruktora pogas ir poga "Ievietot vaicājuma operatorus". Tas nekavējoties pievienos tukšu vaicājuma struktūru ar nosacījumu, grupēšanu, secību un summām.

Labajā pusē ir ļoti noderīgas pogas, kas palīdzēs, ja izmantosit šo vaicājumu, izstrādājot risinājumus 1C.

Poga ļauj konvertēt uzrakstīto vaicājumu tekstā. Mūsu gadījumā tas izskatīsies kā attēlā zemāk.

Varat saglabāt pieprasījumus failā vai ielādēt no tā. Tas ir ļoti ērti turpmākai lietošanai.

Pirms vaicājuma tiešas izpildes ir jāiestata tā ievades parametri (ja tādi ir), pēc tam noklikšķiniet uz pogas "Palaist vaicājumu". Arī šeit ir iespējams izpildīt pieprasījumus nevis pilnībā, bet atsevišķi jebkuru paketi.

Skata režīms nosaka, kā tiks parādīts vaicājuma rezultāts: saraksts, hierarhisks saraksts vai koks.

Izpildes rezultāts tiks parādīts pieprasījuma konsoles pašā apakšā. Tas arī parāda saņemto rindu skaitu un izpildes laiku. Ja nepieciešams, varat pārvietot vaicājuma rezultāta rindas.

Ļoti bieži lietotājiem tiek lūgts atlasīt dažus datus un saglabāt tos programmā Excel. Jums var būt nepieciešams arī šis. Lai pabeigtu uzdevumu, izvēlnē “Vairāk” ir jāatlasa vienums “Displeja saraksts”. Programma liks atzīmēt vajadzīgās kolonnas.

Papildus izvades kolonnu saraksta iestatīšanai šeit varat norādīt arī konkrētas rindas. Tas tiek darīts, iezīmējot rindas pašā vaicājumā. Turklāt kolonnas atlases veidlapā pietiek ar karoga iestatīšanu iestatījumā “Tikai atlasīts”.

Mūsu piemērā mēs esam parādījuši visus vaicājuma rezultātu datus. Varat tos saglabāt ārējā failā, kopējot tos no atvērtā izklājlapas dokumenta vai izmantojot karsto taustiņu kombināciju Ctrl+O. Ir daudz iespēju saglabāt formātus, mēs izvēlējāmies "*. xlsx".

Kā redzat, darbs vaicājumu konsolē ir ļoti ērts un noderīgs, tāpēc ļoti iesakām to lejupielādēt un likt lietā.

Vaicājumu konsole 1- ērts rīks vaicājumu veidošanai un atkļūdošanai uzņēmuma režīmā 1s. Izmantojot vaicājumu konsoli Jūs varat izpildīt pieprasījumu 1s datu bāzei un redzēt pieprasījuma rezultātu tieši ekrānā 1s uzņēmumā. Šajā rakstā mēs apskatīsim divas konsoles, viena paredzēta 1s 8.2 (parastās formas), bet otrā var darboties gan parastajā, gan pārvaldītajā formā 1s 8.3.

Lejupielādēt vaicājumu konsoli 1s

Lai sāktu strādāt ar apstrādi, vispirms ir nepieciešams lejupielādēt vaicājumu konsole 1s, tālāk sniegsim lejupielādes saites, taču pagaidām ņemsim vērā faktu, ka 1s pieprasījuma konsoli var klasificēt un klasificēt vienā no šiem veidiem:

  1. Parastajām veidlapām (1 s 8.2)
  2. Pārvaldītām veidlapām (1 s 8.3)
  3. Jaukts (darbojas gan 1s 8.2, gan 1s 8.3)

Mūsu rakstā mēs apskatīsim divas konsoles, pirmā darbojas tikai ar 1s 8.2 (parastās formas), bet otrā darbojas uz 1s 8.3 ( pārvaldītās veidlapas). Tie nedaudz atšķiras viens no otra, par atšķirībām runāsim vēlāk, taču pagaidām atzīmējam, ka pārvaldītajās lietojumprogrammās konsole pareizi darbosies tikai palaišanas režīmā "Thick Client".

Lejupielādējiet 1s pieprasījuma konsoli parastai lietojumprogrammai 1s 8.2

Tālāk ir parādīts apstrādes ekrānuzņēmums, varat lejupielādēt 1s pieprasījuma konsoli parastai 1s 8.2 lietojumprogrammai.

Lejupielādēt 1s pieprasījumu konsoli pārvaldītai lietojumprogrammai 1s 8.3

Un šī ir otrā konsole, tās ekrānuzņēmumu varat redzēt arī zemāk esošajā ekrānā, izmantojot saiti, varat lejupielādēt 1s pieprasījuma konsoli pārvaldītajai lietojumprogrammai 1s 8.3

1s pieprasījuma konsoles darbības principu un galvenās funkcionalitātes apraksts parastajai lietojumprogrammai 1s 8.2


Šis vaicājumu konsole 1s 8.2 parastai lietojumprogrammai viegli lietojams un neprasa no lietotāja īpašas zināšanas. Ekrānuzņēmumā ir redzams testa lauks vaicājuma rakstīšanai, tajā var ierakstīt vaicājumu gan manuāli, gan izmantojot konstruktoru. Zem skaitļa 1 attēlā ir redzama poga "Parametri", noklikšķinot uz tās, mēs redzēsim veidlapu parametru aizstāšanai pieprasījumā, mēs pie tās atgriezīsimies vēlāk. Zem skaitļa 2 redzat darbvietu un darbību joslu ar pašu pieprasījumu, šeit mēs varam pievienot pieprasījumus, dzēst tos un arī saglabāt tos atsevišķā failā diskā. Zem numura 3 collas vaicājumu konsole 1s 8.2 ir rezultātu izvades iestatījums, to var attēlot tabulas veidā vai hierarhiski koka formā, otrā opcija tiek izmantota, kad vaicājuma rezultātā mums ir jāredz hierarhija. 4. punkts parāda, vai vaicājumā ir pagaidu tabulas, ja ir, tad varam tās atkļūdot un redzēt izpildes rezultātu, kas tiek ievietots pagaidu tabulā.

Tagad apskatīsim dažus atsevišķus punktus vaicājumu konsole 1s.

Virs jūs redzat logu, kurā parametri tiek aizstāti ar pieprasījumu. Noklikšķinot uz pogas "No pieprasījuma", mēs saņemsim pieprasījumā norādītos parametrus, tagad mums tikai jāiestata vēlamās vērtības un jāaizver forma. Starp citu, ja rediģējat pieprasījumu un jūsu iepriekš pievienotie parametri veidlapā vairs netiek izmantoti, tie tiks iezīmēti pelēkā krāsā. Ja šādu parametru ir daudz, tos var noņemt no loga, izmantojot pogu "Dzēst neizmantoto".

Ja jūsu vaicājumā ir pagaidu tabulas, varat tās atkļūdot atsevišķos apakšvaicājumos un redzēt šī apakšvaicājuma izpildes rezultātu, ja 1c vaicājuma konsoles galvenajā logā redzam, ka ir pagaidu tabulas, tad noklikšķiniet uz "Pagaidu tabulas. tabulas" pogu (4. punkts galvenajā konsoles logā). Pēc noklikšķināšanas parādīsies logs, kuru redzējām iepriekš, tajā ir redzamas visas vaicājuma pagaidu tabulas, noklikšķiniet uz "Atkļūdot", un mēs redzēsim šādu logu.

Īss 1s pieprasījuma konsoles funkcionalitātes apraksts pārvaldītai lietojumprogrammai 1s 8.3

Iepazināmies ar galvenajām funkcijām vaicājumu konsole 1s 8.2, tagad ir laiks apsvērt vaicājumu konsole 1s 8.3. Šī apstrāde mēs to neapskatīsim tik detalizēti kā iepriekšējo, bet īsumā apskatīsim galvenos parametrus un iestatījumus.

Un ātra informācija. Šajā rakstā es mēģināšu aprakstīt, kā lietot vaicājumu konsoli, un sniegšu saiti, lai lejupielādētu vaicājumu konsoli.

Apskatīsim šo rīku tuvāk.

Lejupielādēt pieprasījumu konsoli 1C

Pirmkārt, lai sāktu darbu ar vaicājumu konsoli, tā no kaut kurienes ir jālejupielādē. Apstrāde parasti tiek iedalīta divos veidos - pārvaldītās un regulārās (vai dažreiz tās sauc par 8.1 un 8.2 / 8.3).

Es mēģināju apvienot šos divus skatus vienā apstrādē - vēlamajā darbības režīmā tiek atvērta vēlamā forma ( pārvaldītajā režīmā konsole darbojas tikai biezajā režīmā).

Varat lejupielādēt 1C 8.3 (8.2) pieprasījumu konsoli pārvaldītajām un parastajām veidlapām, izmantojot saiti:.

1C vaicājumu konsoles apraksts

Ja jūs interesē, kā vaicājumi tiek rakstīti 1C sistēmā, iesaku izlasīt rakstu un.

Sāksim apsvērt vaicājumu konsoli ar galvenā apstrādes paneļa aprakstu:

Vaicājumu konsoles galvenē varat redzēt pēdējā vaicājuma izpildes laiku ar milisekundes precizitāti, kas ļauj salīdzināt dažādus dizainus veiktspējas ziņā.

Pirmā komandu joslas pogu grupa ir atbildīga par pašreizējo vaicājumu saglabāšanu ārējā failā. Tas ir ļoti ērti, jūs vienmēr varat atgriezties pie sarežģīta vaicājuma rakstīšanas. Vai, piemēram, uzglabājiet noteiktu konstrukciju tipisku piemēru sarakstu.

Kreisajā pusē esošajā laukā Pieprasījums varat izveidot jaunus pieprasījumus un saglabāt tos koka struktūrā. Otrā pogu grupa ir atbildīga tikai par pieprasījumu saraksta pārvaldību. Izmantojot to, varat izveidot, kopēt, dzēst, pārvietot pieprasījumu.

Saņemiet 267 1C video nodarbības bez maksas:

  • Izpildīt pieprasījumu- vienkārša izpilde un rezultāta iegūšana;
  • Izpildīt paketi- ļauj skatīt visus starpposma pieprasījumus
  • Pagaidu tabulu apskate- ļauj skatīt rezultātu, ko tabulā atgriež pagaidu vaicājumi.

Pieprasījuma parametri:

Ļauj iestatīt pašreizējos pieprasījuma parametrus.

Vaicājuma parametru logā ir interesanti:

  • Poga Saņemiet no pieprasījuma automātiski atrod visus parametrus pieprasījumā izstrādātāja ērtībām.
  • Karogs Vieni parametri visiem pieprasījumiem- ja tā ir instalēta, tā apstrāde nenotīra parametrus, pārejot no pieprasījuma uz pieprasījumu vispārējā pieprasījumu sarakstā.

Iestatiet parametru kā vērtību sarakstuļoti vienkārši, izvēloties parametra vērtību, pietiek noklikšķināt uz vērtības dzēšanas pogas (krustiņa), sistēma liks jums izvēlēties datu tipu, kur jums jāizvēlas "Vērtību saraksts":

Arī augšējā panelī ir poga vaicājumu konsoles iestatījumu izsaukšanai:

Kur var norādīt vaicājuma automātiskās saglabāšanas opcijas un vaicājuma izpildes opcijas.

Pieprasījuma teksts tiek ievadīts konsoles pieprasījuma laukā. To var izdarīt ar vienkāršu vaicājumu pārbaudes komplektu vai izsaucot īpašu rīku - vaicājumu veidotāju.

Noklikšķinot uz ievades lauka, tiek izsaukts no konteksta izvēlnes (peles labā poga):

Arī šajā izvēlnē ir noderīgas funkcijas, piemēram, pieprasījuma notīrīšana vai defises rakstzīmju ("|") pievienošana vai pieprasījuma koda iegūšana šajā ērtajā formā:

Pieprasījums = jauns pieprasījums; Pieprasīt. Teksts = " | SELECT | Valūtas.Atsauce |NO | Rokasgrāmata. Valūtas AS Valūtas"; RequestResult = Pieprasījums. Izpildīt() ;

Vaicājumu konsoles apakšējā laukā tiek parādīts vaicājuma rezultāta lauks, kuram tika izveidota šī apstrāde:

Turklāt vaicājumu konsole papildus sarakstam var parādīt datus koka veidā vaicājumiem, kas satur kopsummas.

Tātad, sāksim ar vienkāršu: konfiguratorā izveidojiet jaunu apstrādi, nosauciet tai Query Console vai Query Builder, kā vēlaties.

Mēs varam nekavējoties pievienot tabulu "Datiem" nākamajiem parametriem, kas mums nepieciešami, lai mūsu konsolē palaistu nevis primitīvāko pieprasījumu, bet gan ar parametriem un saitēm, piemēram, mūsu darbam mēs izveidosim pieprasījumu periodiskiem reģistriem. , bet šeit nenorādot Parameter=&Date nekur.

Lai izveidotu mūsu Parametru tabulu, cilnē "Dati" tās "Tabulārā daļa" pievienojiet jaunu tabulu, sauksim to par Vaicājuma parametriem, šeit mēs pievienosim šīs tabulas kolonnas: 1) ParameterName, virknes veids = 25 rakstzīmes; ParameterValue, šeit ir salikts datu tips, skatiet attēlu:

Tāpēc, kā parādīts attēlā - kolonnai ParameterValue atlasiet salikto veidu: atvērtajā veidu izvēlnē atzīmējiet izvēles rūtiņu "Composite type", atzīmējiet skaitli, virkni (norādiet 20 rakstzīmes), datumu, Būla vērtību un ievietojiet zemākā atzīme - AnyReference - tas nozīmē, ka tālāk, norādot mūsu pieprasījuma Parametrus, mēs varam atsaukties uz jebkuru mūsu konfigurācijas objektu, piemēram, direktorijiem vai dokumentiem.

Tagad mums ir jāizveido mūsu nākotnes vaicājumu konsoles forma. Apstrādē dodieties uz cilni "Veidlapas" un pievienojiet jaunu. Ieejam šo veidlapu un jau ir neierobežots lauks radošumam - varat sakārtot divus tikko izveidotos atribūtus un plāksni ar parametriem, kā jums patīk! Šim nolūkam varat izmantot standarta veidlapas elementus, piemēram, Grupa vai Lapa ar lapām (ja jums vairāk patīk pāršķirt lapas.

Galvenais šeit ir viens: ievelkot atribūtu "TextValues" formas kreisajā rediģēšanas laukā - noteikti tā rekvizītos iestatiet "View" = teksta dokumenta lauks. Skatīt attēlu:

Atribūta "QueryTable" rekvizītos pēc izvēles varat norādīt - "Displeja režģis" un "Displeja galvenes".

Tālāk labajā veidlapas rediģēšanas logā dodieties uz cilni "Komandas" un pievienojiet jaunu pogu, noklikšķinot, mūsu konsole veiks noteiktu darbību. Izveidosim pogu "Vaicājuma konstruktors", pogai var pievienot ikonu pēc vēlēšanās, galvenais ir pārvietot pašu pogu uz kreiso formu rediģēšanas logu - lai mēs to redzam.Tad, pareizā formā rediģēšanas logā, ar peles labo pogu noklikšķiniet uz mūsu pogas un atlasiet rekvizītus - rekvizītos noklikšķiniet uz vienuma "Darbība", parādīsies modālais logs ar jautājumu - kur tieši tiks izpildīts mūsu programmas kods, kuru mēs piešķirsim pogai - izvēlieties "Uz klientu".

Veidlapas modulis tiks atvērts ar gatavu tukšu procedūru "Procedūras pieprasījuma konstruktors (komanda)". Šajā procedūrā mēs aprakstīsim standarta Query Builder 1c8 izsaukumu. Tas ir ļoti vienkārši: Constructor=Jauns vaicājuma konstruktors; Bet šeit ir kļūmes - platformā iebūvētais Query Constructor darbojas lietotāja režīmā TIKAI zem bieza klienta! Tāpēc mēs ievietosim priekšapstrādātāja instrukcijas nosacījumu #Ja, bet šeit jūs pats izlemjat, pamatojoties uz savu platformu, vai jums ir parastas formas, tad izvēlieties " ThickClientOrdinaryApplication vai jums ir pārvaldītu veidlapu platforma, tad ThickClientManagedApplication". sk. att.

Tagad atliek šai procedūrai pievienot nosacījumu pieprasījuma teksta rakstīšanai, ko vaicājumu veidotājs mums ģenerēs mūsu veidlapas "Teksta pieprasījums" atribūtā:

Ja Constructor.OpenModally()=True Tad Object.QueryText=Constructor.Text; EndIf;

Bet mēs varam manuāli kaut ko mainīt pieprasījuma tekstā (lietotāja režīmā - "QueryText" rekvizītu logā), lai mūsu izmaiņas nonāktu QueryConstructor, kad tas tiek atkārtoti izsaukts - pievienosim šeit vienkāršu nosacījumu:

Ja Not EmptyString(Object.QueryText) Tad Constructor.Text=Object.QueryText; EndIf;

Tas arī viss, esam pievienojuši 1c8 platformā iebūvēto Query Constructor, paskatīsimies uz mūsu darbu. Lai to izdarītu, palaidiet 1C:Enterprise biezā klienta režīmā, izmantojot vienu no šīm metodēm: 1) konfiguratora galvenā izvēlne - Atkļūdošana - StartDebugging - ThickClient; 2) vai ja jums ir šie taustiņi konfiguratora vadības panelī - vienkārši nospiediet pogu ar dzeltenu apli ar biezu punktu, skatiet attēlu:

Tiek palaists 1sEnterprise8 lietotāja režīms, mēs atrodam savu apstrādi, palaižam to, noklikšķiniet uz pogas "Vaicājuma konstruktors" un skatāmies, kā atveras platformā iebūvētais konstruktors. skatīt att.

Tātad, Query Constructor sāk darboties, mēs jau varam sākt tajā pievienot savu nākotnes pieprasījumu, bet mēs esam ieinteresēti redzēt, kā mūsu izveidotais pieprasījums izdosies! Un šim nolūkam, rediģējot mūsu konsoles formu, konfiguratorā ir jāizveido vēl viena poga, sauksim to par "Run Request". Mēs noklikšķinām uz pogas "Run Request" rekvizītos uz "Darbība", atkal izkrīt izvēlne, kurā mums tiek jautāts - kur tiks apstrādāts mūsu programmas kods, Šis gadījums atlasiet "Gan klientā, gan serverī", atkal mēs nokļūstam ModuleForms.

Procedūrā ExecuteRequest(), kas mums ir klientam, mēs ierakstīsim nosacījumu, ja lietotājs nav ievadījis pieprasījuma tekstu, bet lūdz to izpildīt:

If EmptyString(Object.QueryText) Then report("Ievadiet vaicājuma tekstu!"); EndIf;

Sistēma mums jau ir automātiski ģenerējusi saiti uz ExecuteRequestOnServer() procedūru; - labi, ejam uz šo procedūru, kas tiek izpildīta serverī un ierakstīsim šeit kodu mūsu ievadītā pieprasījuma izpildei.

Šeit ir iespējas: Visas ar vaicājumu konstruēšanu saistītās izteiksmes varat rakstīt pats, t.i. manuāli, bet ir vēl vienkāršāka iespēja - procedūras iekšpusē nospiediet peles labo pogu un nolaižamajā izvēlnē atlasiet "Vaicājumu veidotājs ar rezultātu apstrādi, skat. att.":

Ja noklikšķinājāt uz vienuma Vaicājumu veidotājs ar rezultātu apstrādi, parādīsies modāls logs "Vaicājuma teksts nav atrasts. Vai izveidot jaunu?", noklikšķiniet uz Jā. Apejot rezultātu. Tas ir viss, mums nekas cits nav vajadzīgs no šim konstruktoram noklikšķiniet uz pogas "OK" - modālais logs tiks parādīts "Pieprasījumā netika atlasīts neviens lauks, noklikšķiniet uz "OK".

Pēc tam mūsu procedūrā ExecuteRequestOnServer() parādīsies šāda gatava tukša:

Pārejam pie konstruktora izveidotās izteiksmes:

Request.Text = "";

Request.Text =Object.QueryText;

Tas ir tik vienkārši, mūsu poga "Veikt pieprasījumu" apstrādes veidlapā jau praktiski darbojas, līdz šim tā var tikai apstrādāt vienkārši pieprasījumi bez parametriem, bet galvenais, ka strādā! Atliek tikai vizuāli parādīt apstrādes veidlapas rekvizītu "Vērtību tabula" - mūsu pieprasījuma rezultātus. Atgādināšu, ka mūsu atribūtam "Vērtību tabula" ir tips "Izklājlapas dokuments", jo pretējā gadījumā mēs neredzēsim savus rezultātus lietotāja režīmā. Lietotājs vienmēr izvada tabulas datus vai nu ar izklājlapas dokumentu vai izkārtojumu, es ļoti vēlētos, lai varētu parādīt datus, izmantojot vērtību tabulu - jo tā ir ļoti viegli lietojama un pazīstama, bet diemžēl tabula vērtību ir tikai rīks, kas nepieciešams izstrādātājam, jūs nevarat parādīt datus ekrānā, izmantojot to ...

Apskatīsim sīkāk, kas ir izklājlapas dokuments - tas ir kā Excel lapa - jūs varat nokļūt ierakstā noteiktā šūnā, tikai izmantojot tabulas šūnas, šeit tās sauc par apgabalu, bet mēs paši varam izvēlēties šī diapazonu. apgabalu vienā noteiktā šūnā:

Tātad, mēs sapratām, kas ir izklājlapas dokuments, un paši noteicām, ka mums ir jānosaka mūsu vaicājuma dati konkrētā šī izklājlapas dokumenta šūnā. Bet padomāsim: kas ir tas "RequestResult", ko konstruktors mums tik ātri ģenerēja? Palīdzības atvēršana - vaicājuma rezultāts ir tabula, kurai ir atbilstoši rekvizīti! skatīt att.

Un, ja mēs tagad rakstām pēc izteiksmes QueryResult = Query.Execute(); (ko izveidojis konstruktors), šeit ir tik vienkārša cilpa kolekcijām:

Katram ColumnName From QueryResult.Columns Cikla atskaite(SlejasNosaukums.Nosaukums); EndCycle;

Pēc šīs cilpas pagaidām pārbaudiet visas konstruktora automātiski uzbūvētās izteiksmes. Un palaidiet 1C:Enterprise8 zem bieza klienta Izveidojiet jebkuru vienkāršu pieprasījumu (Varat izmantot Query Builder - tas jau darbojas mums) un noklikšķiniet uz pogas "Palaist pieprasījumu":

Tad jūs redzēsiet loga apakšā ziņojumos - ka QueryResult tabulā ir saglabāti to lauku nosaukumi, kurus mēs tikko atlasījām, izveidojot vienkāršu vaicājumu.

Tagad izklājlapas dokumentā parādīsim šos mūsu ciešanu lauku nosaukumus:

Katram ColumnName From QueryResult.Columns Loop Cell=Object.QueryTable.Scope(1,QueryResult.Columns.Index(ColumnName)+1); Cell.Text=SlejasNosaukums.Nosaukums; EndCycle;

Lai parādītu detalizētu informāciju par vaicājuma datiem, atcelsim konstruktora automātiski izveidotās izteiksmes un ievietosim tieši to pašu cilpu, ko izmantojām, lai parādītu kolonnu nosaukumus cilpas "SelectionDetailedRecords" iekšpusē, tikai tagad mums ir jāpārsūta nevis "QueryResult". tabulas datus uz Šūnas tekstu un pašas atlases datus, palīdzībā redzēsim, kā var piekļūt vaicājuma Detalizētās atlases laukam:

SamplingDetailRecords = QueryResult.Select(); Kamēr SelectionDetailedRecords.Next() Loop //pirmajā rindā mums jau ir tabulas kolonnu nosaukumi, tāpēc mēs ielādējam datus zem pirmās rindasDocumentLineNumber=Object.QueryTable.TableHeight+1; Katrai ColumnName From QueryResult.Columns Loop Cell=Object.QueryTable.Region(DocumentRowNumber,QueryResult.Columns.Index(ColumnName)+1); Cell.Text=SelectionDetailRecords[ColumnName.Name]; EndCycle; EndCycle;

Tas arī viss, mēs varam pārbaudīt, ielādēt uzņēmumu zem bieza klienta, ievadīt vienkāršu pieprasījumu bez parametriem, noklikšķināt uz pogas "Palaist pieprasījumu", skatiet attēlu:

Urā, viss strādā!!!

Tas ir ļoti ērti, kad, atverot/aizverot vaicājumu konsoli, laukā "QueryText" atkal tiek ierakstīts mūsu vaicājuma teksts, ar kuru mēs strādājām pirms konsoles aizvēršanas. Lai to izdarītu, jums vienkārši jāiespējo formas rekvizīts = Autosave skatīt attēlu:

Viss, mūsu konsole darbojas. Lai mēs varētu rakstīt sarežģītākus vaicājumus ar tajos norādītajiem parametriem, mums ir jāizveido vēl viena poga "FindParameters", kā arī pogas "RunQuery" kods - pogas "FindParameters" kods tiks izpildīts klientā un serverī. Tālāk servera procedūrā mēs palaižam pieprasījumu tādā pašā veidā ar tekstu, kas tam nosūtīts no loga "QueryText", izmantojot izteiksmi "Query.FindParameters()", mēs atrodam nodotos parametrus un vienkārši ievadām tos veidlapas "QueryParameters" tabulas sadaļa. Neaizmirstiet tos no aizpildītās parametru tabulas vēlāk nodot procedūrai "Izpildīt pieprasījumu".

Varat arī pievienot dažas pogas mūsu konsolei, kas lietotāja režīmā notīrīs logu Parametri un vaicājuma teksta logu.

Mūsu vaicājumu konsole ir gatava lietošanai, novēlam jums veiksmīgus radošus risinājumus, izmantojot tik vienkāršu un jaudīgu rīku kā Query Console!

Šī apstrāde ir uzrakstīta uz 1s8.3 platformas (pārvaldītās formas), tā darbojas zem bieza klienta. To var arī rakstīt uz 1s8.2 platformas, kā norādīts zemāk konvencionālās formas, un tiek kontrolēts.

Lejupielādē ir tikko izveidotās vaicājumu konsoles paraugs.

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Vaicājumu konsoles jauninājums:

1) Tagad mūsu paštaisītā vaicājumu konsole ar iebūvētu vaicājumu veidotāju darbosies ar jebkuru klientu: parasto un pārvaldīto veidlapu biezajā klientā un plānā un tīmekļa klientā.

ps Iebūvētā Query Builder forma un izskats ir atšķirīgs — atkarībā no tā, kura klienta ietvaros mēs palaižām konsoli.

&AtClient Procedure Query Constructor(Command) //standarta Query Constructor izsaukšana ir iespējama tikai biezā klienta gadījumā #If ThickClientManagedApplication vai ThickClientRegularApplication Then Constructor=New Query Constructor; Ja Not EmptyString(Object.QueryText) Tad Constructor.Text=Object.QueryText; EndIf; Ja Constructor.OpenModally()=True Tad Object.QueryText=Constructor.Text; EndIf; // #Citādi // Report("Vaicājumu veidotāju var izsaukt tikai bieza klienta ietvaros"); // Atgriezties; //# EndIf #Else Report("Jūs lietojat Query Builder zem plāna klienta — tas nedaudz atšķiras pēc formas un veiktspējas ātruma!"); Konstruktors = New Request Constructor(); Ja Not EmptyString(Object.QueryText) Tad Constructor.Text=Object.QueryText; EndIf; AlertConstructor = New AlertDescription("RunAfterClosingConstructor", ThisForm); Constructor.Show(ConstructorAlert); # EndIf EndProcedure &AtClient procedūra ExecuteAfterClosingConstructor(rezultāts, konstruktora parametri) Eksportēt //Result=teksts, ja Concer tika aizvērts ar pogu ok Object.QueryText = ShortLP(rezultāts); //strādā!!! Procedūras beigas

2) Pievienota iespēja mūsu vienkāršajai vaicājumu konsolei ievadīt sarežģītus vaicājumus ar pagaidu tabulu, kas nodota parametriem!!! Mehānisms izrādījās ļoti vienkāršs un elegants – bez XML koda izmantošanas, kā to dara profesionālajās konsolēs.

Otrajā pievienotajā failā varat redzēt pašu kodu un pārejas uz pagaidu tabulu parametriem mehānisma procedūras. Kā sākt izstrādāt savu pagaidu tabulu versiju parametros, var apskatīt šajā saitē https://forum.site/forum9/topic183700/

Tagad, kā izmantot konsoli ar sarežģītu vaicājumu, kad pagaidu tabula tiek nodota tās parametriem. Piemēram, varat ņemt šī pieprasījuma kodu;

SELECT ExternalData.Product, ExternalData.Quantity PUT ExternalData NO &ExternalData AS ExternalData; /////////////////////////////////////////////////// ////////////////////////////// SELECT Ārējiedati.Vienums, Ārējie dati.Daudzums, ISNULL(ItemsRemains.DaudzumsPaliek, 0) AS 1. lauks , IS NULL(ItemsRemainsRemains.QuantityRemains, 0) - ĀrējieDati.Daudzums AS RemainingFROM ExternalData AS ExternalData Product

Līdzīgi kā iepriekš norādītajā vaicājuma kodā – varat izveidot savu sarežģīto vaicājumu, ņemot vērā savus datu objektus.

Tātad vaicājuma konstruktorā mēs izveidojām iepriekš minēto vaicājumu, aizverot konstruktoru - vaicājuma teksts nonāks mūsu konsoles laukā "Vaicājuma teksts", noklikšķiniet uz pogas "Atrast parametrus", mēs redzam, ka virkne = "Ārējais Dati", vērtības tips \u003d "Vērtību tabula" parādījās parametru tabulā, skatiet att.

Šajā parametru tabulā - ievadiet parametru Datums, piemēram, šodienas datums, pēc tam noklikšķiniet uz mūsu pagaidu tabulas parametra "Ārējie dati", lai mēģinātu rediģēt, noklikšķiniet uz trim punktiem laukā ar "Vērtību tabulu" - veidu izvēle. parādīsies, noklikšķiniet uz līnijas, mūsu mehānisms pārvērš mūsu vietā veidlapas lapu, kurā mums manuāli jāievada šī ļoti pagaidu tabula.

Šeit ņemiet vērā, ka šajā gadījumā lapas "TempTables" apakšā laukā "Pagaidu tabulas nosaukums parametros" tiks parādīts mūsu pagaidu tabulas nosaukums (tas ir kopēts no tabulas Parametri).

Pagaidām lapā "TempTables" mēs redzam tikai vienu tukšu tabulu - šī ir mūsu nākotnes pagaidu tabulas tipu tabula. Izmantojot pogu "Pievienot", mēs pievienosim atribūta nosaukumu un nākamās tabulas veidu. . Esiet piesardzīgs — nosaukumam un veidam ir jāatbilst tam, ko norādījām &ārējo datu pieprasījumā:

Tagad mēs nospiežam pogu "UpdateTemporaryTable" - un šeit parādīsies otrā tabula - mēs to tieši aizpildīsim ar pagaidu tabulas datiem, izmantojot pogu "Pievienot".

Tas arī viss, mēs varam vēlreiz pārbaudīt, vai 1. apstrādes lapā esošajā parametru tabulā ievadījām vaicājuma parametru primitīvos datus, un noklikšķiniet uz pogas "Izpildīt pieprasījumu" - viss skaitās, atlasa atbilstoši ar ierobežojumu uz dati, kas pārsūtīti mūsu pagaidu tabulas parametrā

ps Ja esat kļūdījies, ierakstot detaļu nosaukumus un to veidus (pirmajā tabulā) - vienkārši aizveriet konsoli un atveriet to vēlreiz - pagaidu datu tabula tiks dzēsta - un tabulu Tipi varēs rediģēt vēlreiz un atkal var izveidot jaunu datu tabulu.

Tas arī viss, mēs ar savām rokām varam izveidot ļoti jaudīgu darba rīku, turklāt mūsu konsole joprojām ir ļoti ņipra, salīdzinot ar profesionālajām – un tas ir ļoti liels pluss izstrādātājiem! Un, protams, tagad mūsu konsole darbojas jebkura klienta vadībā! Veiksmi radošajos veidos!!!

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Es pastāvīgi strādāju ar savu vaicājumu konsoli, un nesen es saskāros ar ļoti interesantu vaicājumu, kurā pagaidu tabulas nebija pirmajā vietā. pieprasījuma pakete un nākamajos - un te mana pults kļuva mazliet traka... Viņai bija jāveic vēl viens jauninājums.

Tātad pagaidu tabulas pārvaldnieks vaicājumā ne vienmēr saprot, ka viņi ar to strādā)) Tāpēc jums ir skaidri jāiestata šis pagaidu tabulas pārvaldnieks:

&OnServer procedūra ExecuteQueryOnServer() //upgrade2 — precīza TemporaryTable pārvaldnieka definīcija! VTMager=NewTempTableManager; Pieprasījums = jauns pieprasījums; //upgrade2 — precīza TemporaryTable pārvaldnieka definīcija! Query.TempTableManager = VTMager; Request.Text = Object.QueryText;

Šī konsoles versija ir trešajā sāknēšanas reizē.

Viens no jaudīgākajiem 1C Enterprise 8 rīkiem, bez šaubām, ir Query Builder. Konstruktors ir vizuāls rīks darbam ar vaicājumiem 1C valodā. Bet konstruktoram ir viens liels trūkums - tas neuzrāda vaicājuma izpildes rezultātu. Šis trūkumsīpaši jūt iesācēju lietojumprogrammu risinājumu izstrādātāji platformās 1C: Enterprise 8.3 un 8.2.

Turklāt pat pieredzējuši 1C programmētāji bieži saskaras ar situāciju, kad ir nepieciešams veikt “vienreizēju” informācijas bāzes datu analīzi dažādās sadaļās, bet nevēlaties rakstīt pilnvērtīgu ziņojumu šāda "vienreizēja secinājuma" dēļ.

Visos šajos un daudzos citos gadījumos mēs esam priecīgi jums piedāvāt ārējā apstrāde Vaicājumu konsole ar iespēju apstrādāt rezultātus 1C 8.3 un 1C 8.2!


1C 8.3 un 1C 8.2 vaicājumu konsoles galvenās funkcijas:

Universāla apstrāde, darbojas uz jebkuras 1C platformu konfigurācijas: Enterprise 8.1 - 8.3;
- darbojas režīmā 1C:Enterprise;
- vaicājumu var rakstīt manuāli vai arī izsaukt vaicājumu veidotāju;
- parāda pieprasījuma rezultātu;
- Jūs varat norādīt atskaites parametrus tieši vaicājumu konsolē;
- var saglabāt un ielādēt pieprasījumu failus.

Lai palaistu vaicājumu konsoli, jums ir jāpalaiž konfigurācija režīmā 1C:Uzņēmums un jāatver vaicājumu konsoles ārējā apstrāde tāpat kā jebkurš cits diskā saglabāts fails. Šāda apstrāde darbosies tieši tādā pašā veidā, it kā tā būtu daļa no pielietotā risinājuma.


Ārējā apstrāde Query Console atkārto pazīstamo saskarni un lielāko daļu funkcionalitāte standarta rīku komplekts 1C: Enterprise 8.3 un 8.2 sistēmas vaicājumu apkopošanai. Tas arī ļauj iegūt vaicājumu, pakešu vaicājumu un pagaidu tabulu rezultātus.

Vaicājumu konsole tiek izpildīta gan sistēmas klients-serveris, gan fail-serveris darba režīmos, gan zem bieziem, gan plāniem klientiem! Vaicājumu konsole integrē standarta vaicājumu veidotāju, ko sauc par via konteksta izvēlne pieprasījuma pamatteksta laukā.

SVARĪGS! Vaicājuma konstruktors iekšā plāns klients nedarbojas, šis konstruktora atvēršanas izvēlnes vienums nav pieejams. Biezajā klientā ir pieejams Query Builder!


Plānā klientā pieprasījumus varam rakstīt tikai ar roku, visas pārējās funkcijas darbojas bez izmaiņām.