There are several operations that you can perform on setsIr vairākas operācijas,kuras var veikt ar kopām : - {set1, set2, ..., setn} returns union of two or more sets - atgriež divu vai vairāku kopu apvienojumu
- Except(set1, set2) returns set1 members but removes any member that is in set2 - " Izņemot " atgriež to rādītājus, kas ir iekļauti set1, bet atsijā tos, kas ir iekļauti arī set2.
- Head(set, number) returns set with first number of members from original set (if number is not specified then set from the first set member is returned) - "Galva" atgriež kopu ar pirmajiem n (atkarībā no tā, kāda ir noteikta " number " vērtība - 1, 2 .vai .n) rādītājus no oriģinālās kopas ( ja number nav noteikts tad kopa sākot ar tās pirmo rādītāju tiks atgriezta rezultātā ).
- Tail(set, number) returns last number of members from set - atgriež pēdējos n ( atkarīgs kāds ir "number " ) rādītājus šajā kopā
- set.Item(position) returns one member from set with specified position (starting from zero). So if you would like to get first member of set you can use expression - atgriež vienu rādītāju no kopas ar īpašu norādītu pozīciju ( position) (sākot no nulles). Tādēl, ja jūs vēlaties iegūt kopas pirmo rādītāju, jūs varat izmantot izteiksmi Head(set).Item(0)Quite frequently you would like to filter set members using some condition. You can do this with .
Diezgan bieži jums būs nepieciešamība filtrēt kopas rādītājus izmantojot kādu nosacījumu. Jūs to varat izdarīt izmantojot Filter(set, condition). For example in this way you can filter all cities with sales larger than 1000:, kur set - kopa, condition - nosacījums. Piemēram šadā veidā jūs varat atlasīt visas pilsētas, kru pārdošanas rezultāti ir lielāki par 1000 : Filter(Customers.City.Members, Measures.Store Sales > 1000) Within condition expression
- Nosacījumā parasti [Customers].CurrentMember references current set member for which condition is evaluated. For example, this will return all cities which name starts with San (using MATCHES operator with regular expression)izteiksme atsaucas uz patreizējo, tekošo rādītāju kopu, priekš kura nosacījums tiek veidots.
- Piemēram šī te izteiksme atgriezīs visas pilsētas, kuru nosaukums sākas ar " San" (izmantojot MATCHES ( atbilst) operātoru ar regular expression - atbilstību kādai konkrētai simbolu virknei ) :
Filter(Customers.City.Members, Customers.CurrentMember.Name MATCHES 'San .*') Other typical function that is used in conditions is IsEmpty. This expression will return all cities which have non-empty sales amount: - Vēl kāda tipiska funkcija, kas tiek izmantota darbībām ar kopām ir IsEmpty. Sekojoša izteiksme atgriezīs visas pilsētas kā rezultātu, kurā nav tukši pārdošanas apjomi :
Filter(Customers.City.Members, NOT IsEmpty(Measures.Store Sales)) Previously simple set to string function SetToStr was mentioned that is useful for expression testing purposes. But if you would like to format set results in customized way then you can use Ieriekš apskatītā vienkārša teksta tipa funkcija SetToStr ir noderīga lai pārbaudītu sastādīto izteiksmju pareizību. Bet ja jūs vēlaties formatēt kopas rezultātu nestandarta veidā, tad varat izmantot Generate(set, string_expression, separator_string). For example the following expression will return city names concatenated using comma where there is no sales amount recorded:Generate( Piemēram sekojoša izteiksme atgriezīs rezultātā pilsētu nosaukumus atdalītus ar komatiem, kur nav informācijas par pārdošanas apjomiem ( IsEmty(measures.Store Sales) Generate( Filter(Customers.City.Members, IsEmpty(Measures.Store Sales)), Customers.CurrentMember.Name, ', ') \\\\\\\\\\\\\\\\\\\\\\\\\\
|