Skip to main content
Microsoft logo
Power Apps
    • AI Builder
    • Automate processes
    • Azure + Power Apps
    • Build apps
    • Connect data
    • Pages
    • Take a guided tour
  • Pricing
    • Overview
    • Become a Partner
    • Find a Partner
    • Find partner offers
    • Partner GTM Resources
    • Blog
    • Customer stories
    • Developer Plan
    • Documentation
    • For IT Leaders
    • Roadmap
    • Self-paced learning
    • Webinars
    • App development topics
    • Overview
    • Issues
    • Give feedback
    • Overview
    • Forums
    • Galleries
    • Submit ideas
    • User groups
    • Register
    • ·
    • Sign in
    • ·
    • Help
    Go To
    • Power Apps Community
    • Welcome to the Community!
    • News & Announcements
    • Get Help with Power Apps
    • Building Power Apps
    • Microsoft Dataverse
    • AI Builder
    • Power Apps Governance and Administering
    • Power Apps Pro Dev & ISV
    • Power Apps Portals
    • Connector Development
    • Power Query
    • GCC, GCCH, DoD - Federal App Makers (FAM)
    • Power Platform Integration - Better Together!
    • Power Platform Integrations
    • Power Platform and Dynamics 365 Integrations
    • Community Blog
    • Power Apps Community Blog
    • Galleries
    • Community Connections & How-To Videos
    • Community App Samples
    • Webinars and Video Gallery
    • Canvas Apps Components Samples
    • Kid Zone
    • Emergency Response Gallery
    • Events
    • 2021 MSBizAppsSummit Gallery
    • 2020 MSBizAppsSummit Gallery
    • 2019 MSBizAppsSummit Gallery
    • Community Engagement
    • Community Calls Conversations
    • Experimental
    • Error Handling
    • Power Apps Experimental Features
    • Community Support
    • Community Accounts & Registration
    • Using the Community
    • Community Feedback
    cancel
    Turn on suggestions
    Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
    Showing results for 
    Search instead for 
    Did you mean: 
    • Power Apps Community
    • Galleries
    • Community App Samples
    • Service Desk

    Service Desk

    01-24-2023 18:58 PM

    technolog
    Frequent Visitor
    290 Views
    LinkedIn LinkedIn Facebook Facebook Twitter Twitter
    technolog
    technolog
    Frequent Visitor
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    Service Desk

    a week ago

    A software product designed to automate business processes, as well as the processes of various service organizations: IT services, call centers, client departments, project offices and other divisions of companies.
    The point of Service Desk existence is to promptly troubleshoot problems reported by users and restore the optimal level of service.

    Table 1 - Global Variables Used in the Program

    Name

    Type

    Description

    CurrentLang

    Text

    The language selected by the user

    CurrentUser

    Text

    Username

    IsAdmin

    Boolean

    Whether the user is an administrator

    EditRecord

    Record

    Intermediate entity for transferring data of the selected request for its further editing

    Table 2 - Attributes of the AccountNameTypes collection

    Attribute

    Description

    AccountNameTypes

    Department name

    Table 3 - Attributes of the Attendants collection

    Attribute

    Description

    Name

    Name of employee

    Department

    Employee's department

    Table 4 - Attributes of the CaseStatus collection

    Attribute

    Description

    StatusCase

    Possible request statuses

    Table 5 - Attributes of the PriorityTypes collection

    Attribute

    Description

    PriorityTypes

    Possible types of order priority

    Table 6 - Attributes of the Tickets collection

    Attribute

    Description

    ID

    Application identifier

    Owner

    Customer name

    Priority

    Requisition priority

    Status

    Order status

    Subject

    Subject of the request

    Description

    Description of the order

    Comment

    Comment to the request

    DateCreated

    Creation date of the request

    DateClosed

    Closing date of the request

    AssignedTo

    Executor of the request

    AccountName

    Executor's department

     

    The first screen the user sees is the login screen, which offers to log in as a regular user or as an administrator. The difference between these two entities is the filtering of requests relative to the user. The administrator can edit all current requests; the user can only see requests where he acts as a performer.
    Also support of three languages is realized in the application: English, Spanish and Russian.
    This functionality is implemented through connection to MicrosoftTranslator. When you click on the flag corresponding to the language, the CurrentLang variable changes. For example, when you click on the Spanish flag, the function:
    Set(CurrentLang; "es").
    This, in turn, will change the text of all text fields except for the filter gallery fields. For example, the text of the application subject field is implemented like this:
    MicrosoftTranslator.Translate(ThisItem.Subject;CurrentLang)
    It is also worth noting that at the moment the separator in the functions is a semicolon, although in the documentation to PowerApps the separator is a comma, hence the examples from there are not working.

    Interface when English is selected:

    technolog_0-1674614638027.png

    technolog_3-1674614735873.png

    technolog_0-1674615358793.png

    technolog_1-1674615371884.png

     

    The main screen for the administrator is a list of all requests (Figure 1). In the upper left corner there are two icons: exit and filter display.
    When you click on the exit icon, you will go to the authorization window through the Navigate(LoginScreen;ScreenTransition.None) function.
    Clicking the filter icon opens/closes the filter menu. When the menu is active, the icon is colored.
    The request list is a collection, consisting of groups of elements (request ID, customer, priority, etc.)

    Filtering is implemented in the "Items" property of TicketsGallery:

    Filter(TicketsCollect;StartsWith(Subject;FilterInput.Text) &&

    (Status = RadioStatus.SelectedText.Value || RadioStatus.SelectedText.Value = Blank()) &&

    (AssignedTo = DropdownNames.SelectedText.Value || DropdownNames.SelectedText.Value))

    There is also a reset icon in the filter menu which, when clicked, will do the following:

    Reset(RadioStatus);;Reset(FilterInput);;Reset(DropdownNames);;

    technolog_2-1674615424207.png

     

    The main screen for the user is similar to the administrator interface, except for one feature: the filter field "Executor" is filled with the name of the current user and is not available for change, therefore, he is available requests, where he is listed as an executor.

    When you click on any of the applications from the list, you will be taken to a page with detailed information

    This transition is implemented by using the "Navigate" command, and before the transition an intermediate entity is created that stores the current (not yet changed) state of the request:
    Set(EditRecord; ThisItem);;
    Navigate(TicketdetailsPage;ScreenTransition.Fade;{
    type:ThisItem.Status;
    assign:ThisItem.AssignedTo;
    Area:ThisItem.AccountName;
    priority:ThisItem.Priority;
    })

    On the page with detailed description of the request the user can change only its status. When saving the changes, it is checked if the status of the request has been changed to "Closed" if yes, then the closing date is the current day:
    If(EditStatus_tb.Text<>"Closed";
    UpdateIf(TicketsCollect;ID=EditRecord.ID;{
    Status:EditStatus_tb.Text;
    AssignedTo:assign;
    DateClosed:Today();
    AccountName:EditArea_tb.Text;
    Priority:EditPriority_tb.Text;
    Subject:Subject_tb.Text;
    Description:Desc_tb.Text;
    Comment:Comment_tb.Text.
    });
    UpdateIf(TicketsCollect;ID=EditRecord.ID;{
    Status:EditStatus_tb.Text;
    AssignedTo:assign;
    DateClosed:TextBox3;
    AccountName:EditArea_tb.Text;
    Priority:EditPriority_tb.Text;
    Subject:Subject_tb.Text;
    Description:Desc_tb.Text;
    Comment:Comment_tb.Text});;

    Navigate(DashboardPage;ScreenTransition.Fade)

    The administrator can also change the Department, Executor, and Priority fields. In the course of work, a cascading approach was implemented for the fields "Department" and "Executor". This means that when selecting a department as a result of filtering, only performers assigned to this department will remain for selection

    Also on the main page, when you click the icon "+", you will go to a window where you can create a new application

    As you can see from the figure, some fields are marked with an asterisk, which means that they must be filled in. If one or more of these fields will not be filled, an error message appears at the bottom

     

    This check is included in the logic of the button of request creation. It is also implemented to collect data for its further saving in the request collection:
    If(CreatedBy.Text="" ||
    Dropdown_Priority.SelectedText.Value = "Select Priority" ||
    DepartmentListNew.SelectedText.Value = "Select Department" ||
    AssignedListNew.SelectedText.Value = "Select Executor" ||
    Subject.Text=";

    UpdateContext({msg_visible:false});;
    UpdateContext({msg_visible:true});
    Collect(TicketsCollect1;{
    ID:Text(CountRows(TicketsCollect1)+1);
    Owner:CreatedBy.Text;
    AccountName:AssignedListNew.SelectedText.Value;
    Priority:Dropdown_Priority.SelectedText.Value;
    Subject:Subject.Text;
    Description:Description.Text;
    Status: "In progress"; DateCreated:Text(Today())});;

    Navigate(DashboardPage; ScreenTransition.None))

     

    technolog_3-1674615470859.png

    technolog_4-1674615484734.png

    technolog_5-1674615493117.png

    technolog_6-1674615502941.png

     

     

     

     

    MyServiceDesk485_20220208180352.zip
    Labels:
    • Labels:
    • Galleries and Forms
    • Mobile App Design and User Experience
    Message 1 of 1
    290 Views
    0 Kudos
    Reply
    • All forum topics
    • Next Topic

    Power Platform

    • Overview
    • Power BI
    • Power Apps
    • Power Pages
    • Power Automate
    • Power Virtual Agents

    Browse

    • Sample apps
    • Services

    Downloads

    • Windows
    • iOS
    • Android

    Learn

    • Documentation
    • Support
    • Community
    • Give feedback
    • Blog
    • Partners

    • © 2023 Microsoft
    • Follow Power Apps
    • Privacy & cookies
    • Manage cookies
    • Terms of use
    • Trademarks
    California Consumer Privacy Act (CCPA) Opt-Out Icon Your California Privacy Choices