WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen
Wereld vaardigheden is een internationale beweging die beroepswedstrijden organiseert voor jongeren onder de 22 jaar.

De internationale finale wordt elke twee jaar gehouden. Dit jaar was de laatste locatie Kazan (de laatste finale was in 2017 in Abu Dhabi, de volgende is in 2021 in Shanghai).

WorldSkills Championships zijn 's werelds grootste kampioenschappen voor professionele vaardigheden. Ze zijn begonnen met arbeidersberoepen en de laatste jaren komt er steeds meer aandacht voor ‘beroepen van de toekomst’, waaronder IT-disciplines, waarvoor op het kampioenschap in Kazan een apart groot cluster is toegewezen.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

In het IT-blok is er een competentie (een specifieke “sport”) genaamd “IT Software Solutions for Business”.

Bij elke wedstrijd is de toegestane lijst met gebruikte tools beperkt. En als bijvoorbeeld voor “landschapsontwerp” de lijst met mogelijke tools beperkt is (uiteraard zonder expliciete fabrikant of kleur aan te geven), dan is in de competentie “Softwareoplossingen voor bedrijven” de lijst met geaccepteerde technologieën die deelnemers kunnen gebruiken is strikt beperkt en duidt op specifieke technologieën en specifieke platforms (.NET en Java met een specifieke set raamwerken).

Het standpunt van 1C over deze kwestie is als volgt: informatietechnologie is een zeer dynamisch gebied, er verschijnen voortdurend nieuwe technologieën en ontwikkelingsinstrumenten in de wereld. Vanuit ons oogpunt is het correct om specialisten de tools te laten gebruiken waarmee ze willen en gewend zijn te werken.

In het najaar van 2018 hoorde het management van WorldSkills ons. Nu moesten we de methodologie testen voor het opnemen van nieuwe technologieën in wedstrijden. Het is niet eenvoudig.

Het 1C:Enterprise-platform werd opgenomen in de infrastructuurlijst van het kampioenschap in Kazan en er werd een experimenteel platform voor IT Software Solutions for Business Sandbox georganiseerd.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Houd er rekening mee dat de officiële taal van het kampioenschap Engels is. Alle materialen met de resultaten van de oplossingstaken (broncodes, bijbehorende documentatie, software-interfaces) moesten ook in deze taal worden verzonden. Ondanks de twijfels van sommige mensen (nog steeds!), kun je in 1C in het Engels schrijven.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

9 jonge jongens uit 8 landen (Filippijnen, Taiwan, Korea, Finland, Marokko, Rusland, Kazachstan, Maleisië) namen deel aan de wedstrijd op deze locatie.

De jury – een team van deskundigen – stond onder leiding van een deskundige uit de Filipijnen, Joey Manansala.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Deskundigen uit Finland, de VAE, Costa Rica, Korea, Rusland en Taiwan waren vertegenwoordigd.

Afzonderlijk merken we op dat deelnemers uit Rusland (Pavkin Kirill, Sultanova Aigul) en Kazachstan (Vitovsky Ludwig) besloten om het 1C:Enterprise-platform te gebruiken als onderdeel van de competitie. De rest van de deelnemers gebruikte .NET voor desktop en Android Studio voor mobiele ontwikkeling. Het is interessant dat de deelnemers die voor 1C kozen erg jong zijn (Kirill is een student aan een school in Stavropol, dit jaar ging hij naar de 11e klas, Aigul is een student, Kazan, Tatarstan), terwijl hun tegenstanders veel meer ervaring hadden ( bijvoorbeeld een deelnemer uit Korea - winnaar van het WorldSkills-kampioenschap 2013 in Leipzig; ze hebben allemaal ervaring met deelname aan WorldSkills en meerdere jaren professionele ervaring in de branche).

Gezien het feit dat de deelnemers tijdens de wedstrijd verschillende moderne technologieën gebruikten, hadden we de kans om het 1C:Enterprise-platform in echt gevechtsomstandigheden te testen, om zowel de kwaliteit van de oplossingen die met de hulp werden verkregen als de snelheid van de ontwikkeling die met het gebruik ervan werd verkregen te vergelijken.

Afzonderlijk merken we op dat deelnemers binnen het raamwerk van het speciale IT Software Solutions for Business Sandbox-platform dezelfde taken voltooiden als deelnemers aan het belangrijkste IT Software Solutions for Business-platform.

De taak zelf is een complexe taak voor het automatiseren van een bepaald bedrijf; dit jaar was het voorbeeld van een bedrijf het fictieve bedrijf KazanNeft.

legende

Kazan Oil is een van de grootste oliebedrijven in de Republiek Tatarstan en opereert als een nationale marktspeler en een internationaal erkend merk op dit gebied. Het hoofdkantoor van het bedrijf, gespecialiseerd in veldexploratie, productie, productie, raffinage, transport en verkoop en distributie van olie, aardolieproducten en aardgas, bevindt zich in Kazan (Rusland).

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Omdat het bedrijf een strategie implementeert van snelle expansie en oprichting van nieuwe kantoren in heel Rusland, heeft het management van het bedrijf besloten nieuwe bedrijfsautomatiseringssoftware te introduceren die gericht is op het onderhouden en beheren van bepaalde activiteiten.

Kampioenschapsvoorwaarden

Taken werden aan de deelnemers gegeven in de vorm van modules (sessies) met de vereiste om deze in een beperkte tijd te voltooien. Er waren in totaal 7 modules. Drie sessies voor het oplossen op een desktop – elk 2.5 uur. Drie sessies - client-server-ontwikkeling, waarbij de client een mobiele applicatie was, en de communicatie tussen de client en server werd uitgevoerd via WEB-API. Dit duurde 3.5 uur. Laatste sessie – taken over reverse engineering van bestaande software, 2.5 uur. Als onderdeel van reverse engineering moesten de deelnemers, op basis van de aan hen verstrekte informatie, de structuur van de applicatiedatabase ontwerpen (door een ER-diagram te bouwen), scenario's voor het gebruik van het systeem analyseren (door een use case-diagram te bouwen) en ook ontwikkel en ontwerp de interface van de softwareoplossing volgens de gestelde functionele vereisten.

De belangrijkste gebruikte ontwikkelingsplatforms waren .NET (C#) en Java (inclusief Android Studio voor mobiele ontwikkeling). De experimentele SandBox gebruikte .NET, Java en 1C:Enterprise versie 8.3.13.

Aan het einde van elke sessie beoordeelden de experts het resultaat: een kant-en-klaar werkbaar project dat de taken implementeert die aan het begin van de sessie waren gesteld.

De eigenaardigheid van taken is hun 'vitaliteit': veel vereisten en beperkte tijd. De meeste problemen zijn geen speciale Olympiade-problemen, maar liggen heel dicht bij echte industriële problemen - specialisten worden er elke dag mee geconfronteerd. Maar er zijn veel taken en de tijd is beperkt. De deelnemer moet het maximale aantal problemen oplossen dat het grootste voordeel voor het bedrijf oplevert. Het is helemaal geen feit dat een complexe taak vanuit algoritmisch oogpunt meer gewicht zal hebben dan een elementaire taak. Het creëren van een functionerend boekhoudsysteem van drie tabellen is bijvoorbeeld belangrijker voor een bedrijf dan een mooi rapportageformulier met complexe algoritmen, wat zonder deze tabellen volkomen overbodig is.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

We vroegen de winnaar van de wedstrijd, een deelnemer uit Rusland, Kirill Pavkin, om ons meer te vertellen over wat de taken waren en hoe hij de oplossing benaderde.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Hieronder vindt u een beschrijving van de taak, Kirills eigen verhaal over hoe hij de taak oploste. We hebben ook Vitaly Rybalka, een 1C-medewerker en een van de IT Solutions for Business Sandbox-experts, gevraagd om commentaar te geven op de oplossingen van Kirill.

Als onderdeel van de opdracht was het noodzakelijk om de activiteiten van verschillende soorten gebruikers te automatiseren:

  • Verantwoordelijk voor de boekhouding van de bedrijfsmiddelen
  • Verantwoordelijk voor ongeplande reparaties en gepland onderhoud van bedrijfsmiddelen
  • Inkoopmanagers voor componenten en verbruiksartikelen
  • Afdelingen voor olie-exploratie en olieproductie
  • Het topmanagement had analytische rapporten nodig

Sessie 1

Vanuit het oogpunt van activa (bijvoorbeeld een wagenpark) was het noodzakelijk om hun boekhouding te implementeren (nieuwe opzetten, huidige bewerken), snel zoeken en verschillende soorten filters voor het weergeven van informatie, het verplaatsen van activa tussen de divisies van het bedrijf en groepen activa zelf. Houd een geschiedenis van dergelijke bewegingen bij en geef er in de toekomst analyses over. Activaboekhouding werd voornamelijk geïmplementeerd voor mobiele gebruikersgroepen.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Кирилл: Een interessante deeltaak was het implementeren van knoppen in de assetlijst. Om dit op te lossen hebben we een dynamische lijst gebruikt: we schrijven een willekeurig verzoek en wanneer we gegevens op de server ontvangen, wijzen we navigatielinks naar afbeeldingen uit de beeldbibliotheek toe aan de vereiste velden.

Volgens afspraak kunnen foto's op twee manieren aan een item worden toegevoegd: een foto maken (multimedia) en een keuze maken uit de galerij (dialoogvenster voor bestandsselectie).

Sommige vormen moesten opnieuw worden getekend toen het scherm werd gedraaid:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Bij het wijzigen van schermparameters veranderen we de zichtbaarheid van knopgroepen.

Leuke maar eenvoudige taken zijn onder meer filters in een dynamische lijst, zoeken in twee velden (nummer en naam) en het genereren van een serienummer van een asset.

Commentaar van experts: vanuit het oogpunt van de oplossing op het 1C:Enterprise-platform is de taak vrij duidelijk. Naast het daadwerkelijk creëren van de mobiele applicatie, was het noodzakelijk om te zorgen voor de overdracht van gegevens van de DBMS “server” (MS SQL op de desktop) naar de mobiele applicatie en terug. Voor dit doel werden de mechanismen van externe gegevensbronnen en http-services gebruikt in de desktop “proxy-applicatie”. Voor het mobiele platform zelf zorgde het weergeven van afbeeldingen in een dynamische lijst voor een grotere complexiteit.

Sessie 2

Het was noodzakelijk om een ​​reparatiebeheer voor de activa van het bedrijf op te zetten. Als onderdeel van deze taak was het noodzakelijk om een ​​lijst met reparatieaanvragen (per afdelingen en groepen) bij te houden, rekening te houden met de prioriteiten voor de urgentie van reparaties, een reparatieschema te plannen in overeenstemming met de prioriteiten, de benodigde componenten te bestellen en rekening houden met bestaande. Een interessante deeltaak was dat sommige componenten een houdbaarheidsdatum hadden; als er al een onderdeel is besteld voor een bepaald activum en de deadline ervan nog niet is verstreken, dan is het voor dit activum niet nodig om hetzelfde onderdeel opnieuw aan te schaffen. De reparatie-interface is ontwikkeld voor de desktopcomponent van de bedrijfssoftware.

Ook was het nodig om een ​​niet-triviaal autorisatieformulier te maken voor twee rollen: de verantwoordelijke persoon en de servicemanager. De bijzonderheid is dat je na autorisatie automatisch een van de rollen moet selecteren.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Hieronder vindt u het lijstformulier dat beschikbaar is voor de verantwoordelijke persoon:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Кирилл: Alleen de markering van openstaande serviceaanvragen kan hier worden gemarkeerd. Opgelost door voorwaardelijke opmaak in een dynamische lijst.

Door op de knop onderaan het scherm te klikken, kan de gebruiker naar het volgende formulier gaan:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Vanuit 1C-oogpunt is er niets ingewikkelds in deze vorm.

Hieronder vindt u het formulier dat beschikbaar is voor de servicemanager:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Dit formulier is gesorteerd op prioriteit en datum van aanvraag. Door op onderstaande knop te klikken, kan de gebruiker naar het formulier van de geselecteerde aanvraag gaan:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Naast de veiligheid stelde dit formulier voor om een ​​lijst met reserveonderdelen voor reparaties te implementeren. De subtaak is interessant omdat de onderdelen een vervaldatum hebben. Dit betekent dat als er zich met dit asset al een calamiteit heeft voorgedaan en er een onderdeel voor is besteld waarvan de geldigheidsduur nog niet is verstreken, het hergebruikt kan worden. Dit moet aan de gebruiker worden getoond.

Commentaar van experts: hier plaatste Kirill zelf de accenten correct. Vanuit het oogpunt van implementatie op het 1C:Enterprise-platform is er niets extreem ingewikkelds. Een zorgvuldige analyse van de voorwaarden voor de boekhouding en het gebruik van reserveonderdelen en een competente uitvoering van de taak als geheel waren vereist. Daarnaast was het noodzakelijk om serviceaanvragen goed vast te leggen. De grootste moeilijkheid was alleen de tijdsdruk van 2.5 uur.

Bovendien moest de deelnemer, net als bij mobiele ontwikkeling, op competente wijze gegevens verkrijgen van een extern DBMS (MS SQL).

Sessie 3

Voor onderhoud (onderhoud) werd voorgesteld om een ​​meerjarenplanningsservice te implementeren. Een interessant kenmerk hierbij was de vereiste om een ​​onderhoudsschema voor activa op te stellen op basis van de timing, bijvoorbeeld elke tweede maand op de 3e. Op dezelfde manier volgens een kwantitatieve indicator, bijvoorbeeld volgens de kilometerteller van een auto (olie verversen elke 5000 km, banden vervangen elke 20000 km). De onderhoudsmanager zou een handige mobiele applicatie moeten hebben gekregen die dynamisch een lijst toont met achterstallig, lopend en voltooid onderhoud voor een bepaalde periode. Bovendien moest elk type onderhoud volgens speciaal afgesproken regels in kleur worden geschilderd. De mobiele applicatie moest zorgen voor het aanmaken van nieuwe onderhoudsschema's en het markeren van reeds voltooide onderhoudsschema's, rechtstreeks in de werkplaatsen, met een snelle update van deze informatie op de server.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Кирилл: Er zijn twee soorten reparaties: op tijd gebaseerd en op run gebaseerd. Binnen elk is variatie toegestaan. Volgens het plan zouden reparaties bijvoorbeeld elke vrijdag, de 13e van de maand of elke 20,000 kilometer moeten plaatsvinden. Een taak wordt als voltooid beschouwd als er rechts ervan een vinkje staat.

Er is een voorwaarde opgegeven voor het sorteren van taken in de lijst. Bovendien moet elke regel in kleur worden gemarkeerd, afhankelijk van de omstandigheden.

Door op onderstaande knop te klikken, kunt u een nieuw serviceplan aanmaken:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

De vereiste velden worden weergegeven, afhankelijk van het geselecteerde diagramtype. Als we een wekelijks tijdschema hebben geselecteerd, krijgen we twee velden te zien: het weeknummer en de dag van de week. Bijvoorbeeld op dinsdag elke 3 weken.

Commentaar van experts: net als bij de vorige mobiele ontwikkeling op het 1C:Enterprise-platform, is de taak hier globaal verdeeld in 2 componenten - communicatie met de “server” via web-api en competente weergave van een dynamische lijst met voorwaardelijk ontwerp en filtering (selectie) van gegevens. Bovendien was het interessant om de vereiste te implementeren om reparaties zowel per periode als per kwantitatieve indicator te verantwoorden.

Sessie 4

Voor componenten en verbruiksartikelen moest rekening worden gehouden met voorraden, geplande uitgaven en toekomstige aankopen. Bovendien verscheen hier batchboekhouding, maar niet voor alle goederen. Dit alles moest binnen meerdere magazijnen worden beheerd, inclusief ontvangst, uitgaven en verplaatsing. Volgens de voorwaarden van de taak was het noodzakelijk om de controle over de saldi te garanderen en conflicten te vermijden bij het werken met actuele voorraden. Inkoopmanagers werken in de desktopversie van de software.

Het hoofdformulier ziet u hieronder:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Кирилл: Naast het sorteren op basis van de voorwaarde, werd voorgesteld om de gebruiker de mogelijkheid te geven om willekeurig te sorteren. Op 1C hoef je er niet eens over na te denken. Bij facturen moet het veld met het aantal onderdelen groen gemarkeerd zijn.

Tijdens deze sessie werd hen gevraagd de resterende goederen in magazijnen te controleren. Het bijbehorende bericht moet dus worden weergegeven wanneer u de factuur probeert te verwijderen. Hier herinneren we ons het platformspecialistexamen. De vorm van de factuur is als volgt:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Elk onderdeel heeft een kenmerk dat bepaalt of het aan een specifieke batch moet worden toegewezen. Voor dergelijke reserveonderdelen is het absoluut noodzakelijk om het batchnummer in alle documenten te vermelden. Dit is een extra meting bij het monitoren van onderdelenresiduen. Ze kunnen ook tussen magazijnen worden verplaatst:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Het formulier verschilt alleen van het vorige doordat u in plaats van de klant het magazijn moet aangeven van waaruit de levering zal plaatsvinden. De selectielijst voor de batch wordt automatisch samengesteld nadat het onderdeel is geselecteerd. De gebruiker kan een rapport over de reserveonderdelensaldi genereren:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Hier kunnen we de resterende goederen in het geselecteerde magazijn bekijken. Met de selectievakjes rechts van het magazijn kunt u filteren en sorteren configureren. De lijst bevat geen expliciete verdeling per lot voor de onderdelen waarvoor deze vereist is. Via de navigatielink aan de rechterkant kunt u de saldi per batchnummer van het geselecteerde reserveonderdeel bekijken.

Commentaar van experts: in deze sessie (module) verscheen batchboekhouding voor het eerst. Deelnemers moesten niet alleen zelf, maar ook per batch verantwoording afleggen over verbruiksartikelen en goederen. Over het algemeen is de taak perfect voor het 1C:Enterprise-platform, maar het moest allemaal helemaal opnieuw worden ontwikkeld en binnen 2.5 uur worden voltooid.

Sessie 5

In de vijfde sessie kregen we de functionaliteit van putbeheer toegewezen. Voor exploratiegroepen was het noodzakelijk om een ​​mobiele applicatie te creëren die rekening zou houden met olie- of gasproductieputten. Hier was het nodig om een ​​lijst met huidige putten van de server te ontvangen en de geselecteerde put grafisch weer te geven in lagen (grond, zand, steen, olie), rekening houdend met de diepten van elke laag. Bovendien moest de applicatie het mogelijk maken om informatie over de put bij te werken en nieuwe putten toe te voegen. Voor deze toepassing stelde de klant speciale bedrijfsomstandigheden in in de offline- en online-modus (controle van de communicatie met de server) - het controleren van de communicatie met de server elke 5 seconden en het wijzigen van de functionaliteit van de applicatie afhankelijk van de beschikbaarheid van de server.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Кирилл: Wanneer u een put selecteert, wordt een staafdiagram weergegeven, waarin de lagen tot aan de olie- of gasvoorraden worden gemarkeerd. Voor elke laag worden de naam, de kleur en het voorkomenbereik opgeslagen. Vanwege de ontwerpkenmerken helpen de diagrammen die in het platform zijn ingebouwd niet, maar het spreadsheetdocument kan de taak perfect aan. Putten kunnen worden gemaakt en aangepast:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Afgezien van meervoudige waterdichte bescherming was er niets interessants aan deze vorm.
Vervolgens werd voorgesteld om de verbinding met de server te controleren. We proberen elke 5 seconden verbinding te maken. Als het niet werkt, beperken we de functionaliteit van de applicatie en geven we een melding weer.

Commentaar van experts: De taak van deze sessie is vooral interessant vanwege de grafische mogelijkheden. Deelnemers die het 1C:Enterprise-platform gebruikten, losten het op twee verschillende manieren op: sommigen gebruikten een diagrammechanisme, anderen gebruikten een spreadsheetdocument. Elke methode heeft zijn voor- en nadelen. Als onderdeel van de beslissing tijdens het WorldSkills-kampioenschap was tijd van cruciaal belang (denk nog eens aan de tijdslimiet). Een aparte interessante taak is om de server elke 5 seconden te pingen en het gedrag van de mobiele applicatie te veranderen, afhankelijk van de beschikbaarheid of onbeschikbaarheid van de server.

Sessie 6

Er werd voorgesteld om een ​​werkruimte voor het topmanagement te creëren – Dashboard. Op één scherm was het nodig om de algemene prestatie-indicatoren van het bedrijf voor een bepaalde periode in grafische en tabelvorm weer te geven. Het hoofdformulier is het kostenrapport:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Naast het Dashboard was het noodzakelijk om de distributie van reserveonderdelen voor activareparaties te implementeren met behulp van FIFO/LIFO/‘Het goedkoopste gaat eerst’-afschrijvingsmethoden.

Bij de distributie werd rekening gehouden met batchboekhouding, balanscontrole en bescherming tegen ongeoorloofde gebruikersacties (“fool protection”).

Кирилл: Om op te lossen werden waardentabellen met softwaregeneratie van kolommen gebruikt, omdat er een willekeurig aantal van kan zijn:

  • De eerste tabel is verantwoordelijk voor de totale kosten van afdelingen per maand. De meest onrendabele en winstgevende divisies zijn respectievelijk rood en groen gemarkeerd.
  • De tweede tabel toont per maand de duurste en meest gebruikte onderdelen. Als er meerdere onderdelen zijn die aan de criteria voldoen, moeten deze in één cel worden weergegeven, gescheiden door komma's.
  • De duurste activa (in termen van kosten van reserveonderdelen) worden weergegeven in de eerste rij van de derde tabel. Op de tweede regel wordt de divisie weergegeven waartoe het bovenstaande activum behoort. Als er twee duurste activa zijn met dezelfde kosten, moeten deze in dezelfde cel worden weergegeven, gescheiden door komma's.

De diagrammen werden weergegeven met behulp van de ingebouwde mechanismen van het platform en programmatisch ingevuld met behulp van query's.

Er werd ook voorgesteld om steun voor meertaligheid in te voeren. Het programma laadt XML-bestanden met de lokalisatie van interface-elementen, en het formulier moet opnieuw worden getekend bij het selecteren van een taal in de vervolgkeuzelijst.

Wanneer u op de knop linksonder in het scherm klikt, wordt het voorraadbeheerformulier geopend:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

In deze vorm gaan we eindelijk onderdelen uitgeven aan reparaties. Hier vinden we eerst de onderdelen die we nodig hebben om het asset te repareren. Op basis van de geselecteerde velden en verdeelmethode (FIFO, LIFO of minimumprijs) worden de gevonden matches of een melding als er geen matches zijn getoond. Vervolgens kunt u de onderdelen markeren als bedoeld om dat bedrijfsmiddel te repareren. Balanscontrole is relevant voor de huidige sessie. Als we al gegevens hebben toegewezen, zijn deze niet meer te vinden.

Commentaar van experts: zeer interessante sessie. Het maakt optimaal gebruik van de mogelijkheden van het 1C:Enterprise-platform - hier is competent werken met virtuele tabellen met accumulatieregisters, en programmatisch werken met formulierelementen (in de eerste plaats - tabellen, ten tweede - koppen) en diagrammen. En zelfs LIFO/FIFO bij het analyseren van voorraad, winst-/verliesanalyse, enz.

Sessie 7

Aan het einde van de opdracht (sessie 7) leverde de klant software (exe-bestand) voor projectactiviteiten en een korte video over het werken ermee. Het was nodig om reverse engineering uit te voeren en op basis hiervan 2 diagrammen te maken: een use case-diagram en een entiteit-relatiediagram. Bovendien werden er enkele eisen gesteld aan het maken van software in de toekomst - het was noodzakelijk om een ​​interface-indeling te maken die aan deze eisen voldoet.

Volgens de wedstrijdvoorwaarden was voor het maken van diagrammen alleen MS Visio nodig.

Commentaar van experts: in deze sessie werden de mogelijkheden van het 1C:Enterprise-platform vrijwel niet gebruikt. Diagrammen voor de wedstrijdvoorwaarden zijn gemaakt in MS Visio. Maar een prototype van de interface zou kunnen worden gemaakt in een lege 1C-informatiebasis.

Algemene opmerkingen

Aan het begin van elke sessie werd voorgesteld om gegevens te importeren met behulp van een SQL-script. Dit was het grootste nadeel van het gebruik van 1C vergeleken met C#, omdat we minstens een half uur bezig waren met het distilleren van gegevens in externe gegevensbronnen, het maken van onze eigen tabellen en het verplaatsen van rijen van externe bronnen naar onze tabellen. De rest hoefde alleen maar op de knop Uitvoeren in Microsoft SQL Studio te klikken.

Om voor de hand liggende redenen is het opslaan van gegevens op een mobiel apparaat geen goed idee. Daarom hebben we tijdens mobiele sessies een serverbasis gecreëerd. Zij sloegen daar gegevens op en ontsloten deze via http-diensten.

Commentaar van experts: de 1C/niet-1C-balans is hier interessant - terwijl 1C:Enterprise-programmeurs veel tijd besteedden aan het verbinden met een extern DBMS (Kirill noemde dit hierboven apart), C#/Java (Android Studio voor mobiele ontwikkeling) ontwikkelaars brachten tijd door op andere gebieden – interfaces, meer code schrijven. Daarom waren de resultaten van elke sessie onvoorspelbaar en uiterst interessant voor alle experts. En deze intriges bleven tot het einde bestaan ​​- kijk maar naar de finaletafel van winnaars met de puntenverdeling.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen
Kirill heeft het verhaal afgemaakt :)

Concluderend moet eraan worden herinnerd dat de uitvoerder niet "gewoon de taak hoefde te programmeren volgens de technische specificaties" - hij moest de taak analyseren, blokken selecteren voor de implementatie van subtaken, ze ontwerpen en beslissen wat hij precies zou zijn. in staat zijn om dit in de extreem korte tijd uit te voeren. Alle vier de dagen moest ik onder grote tijdsdruk handelen, waarbij ik elke volgende sessie vaak helemaal opnieuw moest beginnen. Zelfs een volwassen specialist met vele jaren ervaring in de branche zal grote moeite hebben om de toegewezen taak voor de sessie 4% binnen de toegewezen tijd uit te voeren.

Speciale vermelding verdient het gehanteerde beoordelingssysteem.

Voor elke sessie ontwikkelen de taakauteurs een complex systeem van criteria, inclusief het controleren van de functionaliteit, de juiste werking, vereisten voor de applicatie-interface en zelfs het volgen van een stijlgids die speciaal aan de deelnemers wordt verstrekt door het bedrijf waarvoor ze hun oplossingen ontwikkelen.

De evaluatiecriteria zijn zeer fijn uitgewerkt - aangezien de totale kosten van de sessietaak tientallen punten bedragen, kan het voldoen aan een bepaald criterium tienden van een punt voor de deelnemer opleveren. Hierdoor wordt een extreem hoog en objectief niveau van evaluatie van de resultaten van elke deelnemer aan de competitie bereikt.

Bevindingen

De uiteindelijke resultaten waren indrukwekkend.

In een bittere strijd won Kirill Pavkin uit Rusland, die het 1C:Enterprise-platform gebruikte. Kirill is 17 jaar oud, hij komt uit Stavropol.

Letterlijk tienden van een punt scheidden de winnaar van zijn achtervolgers. De tweede plaats werd ingenomen door een deelnemer uit Taiwan. De algemene tabel met de zes beste resultaten ziet er als volgt uit:

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Natuurlijk won Kirill dankzij zijn talent, kennis en vaardigheden.

We merken echter op dat alle drie de deelnemers die het 1C:Enterprise-platform als hulpmiddel gebruikten, in de top vijf zijn opgenomen - wat een onvoorwaardelijke bevestiging is van het wereldniveau van 1C:Enterprise-technologie.

Na de resultaten van de wedstrijd werden de winnaars beloond in het mediacentrum KazanExpo; de jongens ontvingen puur gouden medailles (in overeenstemming met hun plaats) en geldprijzen. Ook kregen de jongens certificaten waarmee ze stage mochten lopen bij 1C.

WorldSkills finale, ontwikkeling van IT-oplossingen voor het bedrijfsleven - wat het is, hoe het gebeurde en waarom 1C-programmeurs daar wonnen

Bron: www.habr.com

Voeg een reactie