Wednesday, August 13, 2025

Azure Functions / Cloud Functions - Q & A

 1. What is an Azure Function?

  • A serverless, event-driven compute service that runs code without managing servers. It automatically scales and charges only for execution time.

2. What are the different types of triggers in Azure Functions?

  • HTTP Trigger, Timer Trigger, Blob Trigger, Queue Trigger, Event Grid Trigger, Service Bus Trigger.

3. Difference between Azure Functions and Web Apps?

  • Azure Functions: serverless, event-driven, pay-per-execution.

  • Web Apps: always-on, used to host full web applications, fixed hosting cost.

4. What languages are supported?

  • C#, JavaScript/TypeScript, Python, Java, PowerShell.

5. What is a cold start?

  • Delay when a function runs the first time after being idle. Functions in Consumption Plan may experience this.

6. What are input and output bindings?

  • Bindings let functions read/write data from resources without explicit code for connection.

    • Input: fetch data automatically (Blob, SQL).

    • Output: send data automatically (Blob, Queue, Table).

7. Difference between Consumption and Premium Plan?

  • Consumption: pay-per-execution, may have cold start.

  • Premium: no cold start, auto-scale, VNET integration, higher performance.

8. What is a Durable Function?

  • An orchestrated workflow for long-running or multi-step processes. Maintains state across executions.

9. How do you handle exceptions?

  • Use try-catch blocks, retry policies, and logging to monitor failures.

10. Can you trigger a function from another function?

  • Yes, using Durable Functions orchestrations or queue/Event Grid triggers.


B. Azure Blob Storage

11. What is Azure Blob Storage?

  • Object storage for unstructured data (images, videos, documents).

12. Types of blobs?

  • Block Blob: files like images, PDFs

  • Append Blob: logs (append-only)

  • Page Blob: virtual hard drives (random-access)

13. What is a container?

  • A logical folder in Blob Storage to organize blobs.

14. How do you upload a file?

  • Via Azure Portal, Azure Storage Explorer, PowerShell, or programmatically with SDKs.

15. Hot, Cool, Archive tiers?

  • Hot: frequent access

  • Cool: infrequent access

  • Archive: rarely accessed, lowest cost

16. How do you secure Blob Storage?

  • Use RBAC roles, Shared Access Signatures (SAS), firewall rules, private containers.

17. What is SAS?

  • Short-term URL or token granting limited access to a storage resource.

18. Can Azure Functions read blobs directly?

  • Yes, using Blob trigger or input binding.

19. Difference between Blob Storage and Azure Files/Tables?

  • Blob: unstructured files

  • Files: SMB/NFS network file share

  • Tables: structured NoSQL storage

20. How to monitor Blob Storage?

  • Azure Monitor, metrics, activity logs, storage analytics.


C. Managed Identity

21. What is Managed Identity?

  • Azure AD feature that lets resources authenticate without storing credentials.

22. Types of Managed Identity?

  • System-assigned: tied to resource lifecycle

  • User-assigned: independent, can be used by multiple resources

23. Why use Managed Identity?

  • Eliminates the need for secrets, more secure.

24. How to enable Managed Identity for Azure Function?

  • Function App → Identity → System-assigned → On → Save

25. Can Managed Identity access multiple resources?

  • Yes, assign roles for each resource.

26. How do you assign a role?

  • Azure Portal → Resource → Access Control (IAM) → Add Role Assignment → Choose Managed Identity → Select role

27. Can Managed Identity be used with Key Vault?

  • Yes, to read secrets without storing credentials in code.

28. How does a function authenticate to Blob Storage using Managed Identity?

  • Function uses identity token from Azure AD, then RBAC role (e.g., Storage Blob Data Contributor) allows access.

29. Difference between Service Principal and Managed Identity?

  • Service Principal: manual credentials, independent of resource lifecycle

  • Managed Identity: automatically managed, tied to Azure resource

30. How to secure API access using Managed Identity?

  • API validates Azure AD token from Managed Identity; no password needed.


D. Scenario-Based / Real-Time Questions

31. Automatically resize images uploaded to Blob Storage?

  • Use Blob Trigger Azure Function → process image → save to another container.

32. Multi-step workflow example?

  • Use Durable Function: upload → process → notify → archive.

33. Send email notification when a file is uploaded?

  • Function reads blob → use SendGrid or SMTP connector to send email.

34. Secure a function processing confidential documents?

  • Use Managed Identity for storage access

  • Restrict HTTP access via function keys or API keys

  • Enable VNET integration if needed

35. Architecture combining Power Automate, Functions, Blob Storage, Managed Identity?

  • Power Automate: trigger from external events

  • Azure Function: process file

  • Blob Storage: store files

  • Managed Identity: secure function access

36. Handling large files in Blob Storage?

  • Use chunked upload, streaming, or asynchronous processing in functions.

37. Versioning and lifecycle management?

  • Enable blob versioning → older versions retained

  • Lifecycle rules: automatically move blobs to cool/archive tier or delete after a period.

38. Integration with Logic Apps or Power Automate?

  • Blob Storage triggers → start workflow in Logic Apps/Power Automate

  • Azure Function can also be called from flow

39. Encryption at rest/in transit?

  • At rest: Azure automatically encrypts blobs

  • In transit: use HTTPS or SAS token

40. Troubleshoot Managed Identity authentication failures?

  • Check role assignments

  • Verify identity is enabled

  • Check Azure AD token issuance

  • Review function logs

41. Can Managed Identity be used across subscriptions?

  • Only User-assigned identity can be shared across subscriptions with proper RBAC roles.

42. Rotating secrets or certificates?

  • With Managed Identity, no secrets are needed → rotation handled automatically.

43. Real-world enterprise scenario using Managed Identity?

  • Function reads sensitive documents from storage → stores metadata in SQL DB → all without storing credentials.

44. Difference between Azure Function and Power Automate for automation?

  • Function: complex, scalable, code-based workflows

  • Power Automate: simpler, low-code, UI-based workflows

45. Logging and monitoring best practices?

  • Use Application Insights for performance metrics, failures, and telemetry

46. Example of Event Grid Trigger usage?

  • Trigger function when new blob uploaded → process or notify

47. Using Service Bus with Functions?

  • Trigger function on queue messages → scalable, asynchronous processing

48. Blob trigger vs HTTP trigger?

  • Blob Trigger: runs automatically on blob change

  • HTTP Trigger: runs when called via HTTP request

49. Durable Function orchestration steps?

  • Orchestrator function calls activity functions → maintains state → retries and timing handled

50. Scaling Functions for high volume?

  • Use Consumption or Premium Plan, asynchronous triggers, queue/message-based scaling, monitor metrics

Core SPFx Web Part Lifecycle Methods

 

Method Runs When Main Purpose
constructor() When class instance is created Initialize variables, defaults
onInit() Before first render Async setup, PnPjs config, initial data fetch
render() Every time the web part renders Display UI on page
onAfterRender() After render completes Optional DOM manipulations or event attachments
onDispose() When web part is removed from page Cleanup (timers, event handlers, etc.)


Page Loads
   │
   ▼
┌───────────────────────┐
│   constructor()        │
│ - Runs once            │
│ - Initialize variables │
│ - Set default values   │
│ ❌ SPFx context NOT ready │
└───────────────────────┘
   │
   ▼
┌───────────────────────┐
│   onInit()             │
│ - Runs once before render │
│ - Async setup allowed      │
│ - Configure PnPjs          │
│ - Fetch initial data       │
│ ✅ SPFx context available   │
└───────────────────────┘
   │
   ▼
┌───────────────────────┐
│   render()             │
│ - Draws UI to DOM      │
│ - Can be called multiple times │
│ ✅ SPFx context available        │
└───────────────────────┘
   │
   ▼
┌───────────────────────┐
│   onAfterRender()      │
│ - Optional             │
│ - Manipulate DOM after render │
│ - Attach event handlers        │
└───────────────────────┘
   │
   ▼
User edits properties → getPropertyPaneConfiguration() → render() updates
   │
   ▼
┌───────────────────────┐
│   onDispose()          │
│ - Clean up timers, events │
│ - Web part removed from page │
└───────────────────────┘


Flow Summary

  1. constructor() → “Set up internal stuff, no SPFx context”

  2. onInit() → “Do SPFx-aware async setup (PnPjs, fetch data)”

  3. render() → “Display the web part UI”

  4. onAfterRender() → “Optional DOM manipulation after render”

  5. onDispose() → “Cleanup when web part is removed”


Here’s a diagram showing the full async/await/Promise toolbox in a SharePoint scenario

 [Async Function: fetchProjects()]

            │

            │ async → allows await inside

            ▼

       try { … } catch { … } finally { … }

            │

            ▼

[Await Promise] → sp.web.lists.getByTitle("Projects").items.get()

            │

     ┌──────┴────────┐

     ▼               ▼

Promise resolves   Promise rejects

   │                   │

   ▼                   ▼

console.log(items)  catch(error) → console.error(error)

   │                   │

   └─────────┬─────────┘

             ▼

        finally → console.log("Cleanup / Done")


---


Other related keywords/concepts:

- return → resolves Promise inside async

- throw → rejects Promise inside async

- Promise.all() → wait for multiple Promises in parallel

- Promise.race() → continues when first Promise settles

- Promise.allSettled() → get results of all Promises (success + failure)

Explanation:

  1. async → allows await in function.

  2. await → pauses until the Promise resolves or rejects.

  3. try/catch/finally → handles success, failure, and cleanup.

  4. Promise.all / race / allSettled → advanced scenarios with multiple Promises.

  5. return → resolves Promise automatically; throw → rejects Promise.


Here’s a simple diagram to visualize the difference between const, let, and var: csharp Copy Edit

 Scope & Reassignment in JS/TS


1️⃣ var

   - Function-scoped

   - Can be reassigned

   - Can be redeclared

   ┌───────────────┐

   │ function test │

   │   var x = 1   │

   │   x = 2 ✅    │

   │   var x = 3 ✅│

   └───────────────┘

   Outside function: x exists globally (hoisting!)


2️⃣ let

   - Block-scoped { ... }

   - Can be reassigned

   - Cannot be redeclared in same block

   ┌───────────────┐

   │ {             │

   │   let y = 1   │

   │   y = 2 ✅    │

   │   let y = 3 ❌│

   │ }             │

   └───────────────┘

   Outside block: y does NOT exist


3️⃣ const

   - Block-scoped { ... }

   - Cannot be reassigned

   - Cannot be redeclared

   ┌───────────────┐

   │ {             │

   │   const z = 1 │

   │   z = 2 ❌    │

   │   const z = 3 ❌│

   │ }             │

   └───────────────┘

   Outside block: z does NOT exist


Tuesday, July 29, 2025

Content Types / Site colums Lab

 Create a Site Column


Name: Department


Type: Choice (IT, HR, Training, Development)

=======================================

Create a Custom List Using Site Column


Create a list named Employee Tracker


Add the Department Site Column to the list


Add 3–5 entries with different departments


========================

Create a Site Content Type


Name: Employee Document


Parent: Document


Add existing Site Columns:


Department


Full Name



=================


Apply Content Type to Library

Go to any Document Library



Add the content type: Employee Document


Upload a file → You should see Department and Full Name as metadata fields



===============================================


Reuse the Content Type

Go to another site/document library


Add the same Employee Document content type


Upload documents and test metadata



====================================================================

Create Site Columns:


Employee Name (Single line of text)


Department (Choice: HR, IT, Finance, Marketing)


Joining Date (Date and Time)


Location (Choice: Hyderabad, Bangalore, Remote)


=============================================================================


Create a Content Type: Onboarding Record


Parent: Item


Add all above site columns


Create a list HR Onboarding Tracker


Add the content type


Enter 5 sample records

Monday, July 28, 2025

Sharepoint Online lab

SharePoint Hands-On Tasks 

SNo.TopicTask DescriptionObjective
 1🔹 Create Custom List- Go to Site Contents > New > List
- Name: Student Tracker
- Add columns: Name (Text), Course (Choice), Attendance% (Number), Status (Calculated: =IF([Attendance %]<75, "At Risk", "Good"))
Learn list creation, column types, calculated column
 2🔹 Create Document Library- Create new Document Library Project Docs
- Add metadata columns: Project Name, Status (Choice), Owner (Person)
- Upload 5 sample documents
Understand document libraries & metadata
 3🔹 Create Views- In Project Docs, create:
→ Filtered view: “Active Projects” (Status = Active)
→ Grouped view by Project Name
→ Sort by Created date
Practice creating and customizing views
 4🔹 Create Issue Tracker List- Create list: Issue Tracker
- Columns: Title, Priority (Choice), Assigned To (Person), Status (Choice), Due Date
- Enter 10 dummy issues
Use SharePoint List like Excel table for task tracking
 5🔹 Create Folder Structure- In Project Docs:
Create folders for: Finance, Marketing, HR, IT
Move documents into respective folders
Share “Finance” folder with another user
Learn folder organization, sharing
 6🔹 Enable Versioning & Test- Go to Library Settings > Versioning Settings
- Enable Major versions
- Upload file, make 2 edits
- View version history
Understand versioning and document change tracking
 7🔹 Use Check In / Check Out- Enable Check-out in Library Settings
- Upload file, check it out
- Try editing without check-in
- Check-in with a comment
Understand file locking and document lifecycle
 8🔹 Create Lookup Column- In Student Tracker, add column: Mentor (Lookup to another list Mentors)
- Create Mentors list with Name, Dept
Learn relationships between lists
 9🔹 Recycle Bin & Restore- Delete an item/file from a list/library
- Go to Recycle Bin and restore
- Delete permanently from 2nd stage bin
Learn data recovery options
 10🔹 Create Custom List for Event Registration- Create: Event Registration
- Columns: Attendee Name, Email, Event Date, Participation Type (Choice), Feedback (Multi-line text)
- Save View as “Recent Registrations”

SPO Beginners

 Set -1

 

1: Create a Custom List

  • Create a custom list named Employee Directory.
  • Add columns:
    • Employee Name (Single line of text)
    • Employee ID (Number)
    • Department (Choice)
    • Joining Date (Date)
    • Email (Hyperlink)

  2: Add Data & Use Quick Edit

  • Add 5 records manually.
  • Use Quick Edit to update Department for all records.

  3: Create a Calculated Column

   create a SharePoint list to track student progress. Create a list named Student Tracker with the following columns:

  1. Name – Single line of text
  2. Course – Choice (e.g., Power Apps, SharePoint, Power BI, Excel)
  3. Attendance % – Number (0–100)
  4. Status – Calculated column that shows:
    • "At Risk" if Attendance < 75%
    • "Good" if Attendance ≥ 75%

 


  4: Create a Lookup Column

  • Create a new list Departments with:
    • Department Name
    • Location
  • In Employee Directory, replace Department choice column with a Lookup to Departments.

  5: Create a View

  • Create a public view named HR View:
    • Filter: Department = "HR"
    • Sort by: Joining Date (descending)
    • Group by: Department

  6: Enable Version History

  • Enable versioning.
  • Make and save changes to a record.
  • View previous versions.

  7: Add a Person Column

  • Add a column Manager (Person/Group).
  • Assign users from your tenant to records.

  8: Add Attachments

  • Upload attachments to a list item.
  • View and remove attachments.

  9: Create a Library

  • Create a document library named Project Documents.

  10: Upload Files

  • Upload 3 documents of different types (PDF, Word, Excel).
  • Use drag and drop.

  11: Create Folders

  • Create folders:
    • Design Docs
    • Reports
    • Invoices
  • Move files into appropriate folders.

  12: Enable and Test Version History

  • Enable versioning.
  • Edit and upload a new version of a file.
  • View version history.

  13: Check Out / Check In

  • Check out a document.
  • Make changes.
  • Check it back in with comments.

  14: Create a View

  • View: By Project
    • Filter: Project Name = "Project A"
    • Show columns: Name, Project Name, Document Type
    • Group by: Document Type

 

Set -2

Q1: Create a Task Tracker List

Scenario: You are managing a training program and want to track student tasks.

Task:

  • List name: Task Tracker
  • Columns:
    • Task Name (Single line of text)
    • Assigned To (Person)
    • Due Date (Date)
    • Status (Choice: Not Started, In Progress, Completed)
    • Days Left (Calculated)

Q2: Customize List Views

Task:

  • Use any existing list (like Student Tracker).
  • Create 3 views:
    • "All Students"
    • "At Risk Only" (Filter: Attendance % < 75)
    • "Course-wise Grouping" (Group by Course)

Q3: Create a Library for Assignments

Task:

  • Library Name: Assignments
  • Folders: “Power BI”, “Excel”, “Power Apps”
  • Columns:
    • Student Name (Text)
    • Submission Date (Date)
    • Status (Choice: Submitted, Missing, Reviewed)

Bonus: Create a view that shows only “Missing” assignments.


Q4: Enable Version History & Upload Versions

Task:

  1. Enable versioning in the Assignments library.
  2. Upload an assignment file.
  3. Re-upload it with changes.
  4. View version history and restore previous version.

Q5: Check Out & Check In Demo

Task:

  • Enable Check-out/Check-in for the document library.
  • Upload a file, check it out, edit it, then check it in.

 Q6: Add Navigation Links

Task:

  • Add a link to your “Student Tracker” list in the site’s left nav .
  • Link: "👨‍🎓 Students Dashboard"

 

 

Wednesday, July 23, 2025

What are the performance issues resolved in Power apps

Performance issues in the Power Platform can arise from poorly optimized apps, flows, or data sources. Here’s a list of common performance issues and how they are resolved across Power Apps, Power Automate, and Power BI.

🔧 Common Performance Issues & Resolutions
1. 

Slow App Load Times (Power Apps)

Issue: App takes too long to load due to too many controls, screens, or unoptimized queries.

Resolution:

  1. Use delegation-friendly queries (especially with large data sources).
  2. Reduce screen controls and use components or collections.
  3. Load data on demand instead of on app start.
  4. Avoid unnecessary use of Set() and ClearCollect() on app startup.

2. 

Unresponsive Workflows (Power Automate)

Issue: Flows are delayed, stuck, or fail due to API timeouts or poor branching.

Resolution:

  1. Add “Configure Run After” and timeout handling.
  2. Use parallel branches where possible.
  3. Optimize condition blocks and avoid redundant loops.
  4. Avoid calling premium connectors unnecessarily.

3. 

Poor Power BI Report Performance

Issue: Reports take long to load, refresh, or render visualizations.

Resolution:

  1. Reduce visuals per page and avoid complex measures.
  2. Use Import mode instead of DirectQuery when possible.
  3. Optimize DAX expressions.
  4. Implement data aggregation and use Power Query transformations efficiently.

4. 

Dataverse Query Slowness

Issue: Queries to Dataverse are slow or time out.

Resolution:

  1. Use indexed columns in views and filters.
  2. Limit the number of related tables queried.
  3. Avoid pulling all columns (select only necessary ones).
  4. Cache data using collections or variables.

5. 

Mobile App Lag (Power Apps mobile)

Issue: App runs slow or crashes on mobile.

Resolution:

  1. Optimize image sizes and remove unused media.
  2. Use device-specific logic to disable heavy features on mobile.
  3. Minimize concurrent calls to data sources.

6. 

Environment Performance Degradation

Issue: Multiple apps and flows across environments slow down overall system.

Resolution:

  1. Use separate environments for Dev/Test/Prod.
  2. Monitor app performance via Power Platform Admin Center.
  3. Remove unused or orphaned apps/flows.

7. 

Inefficient Expressions and Formulas (Canvas Apps)

Issue: Use of nested If(), Switch(), or repeated LookUp() causes delays.

Resolution:

  1. Replace If() chains with Switch().
  2. Use With() for readability and reusability.
  3. Use ForAll() with inline logic instead of calling Patch() multiple times.

Tuesday, July 22, 2025

What is the role of an architect in Power Platform projects

A Power Platform Architect:

  1. Designs scalable, secure, and maintainable solutions
  2. Selects appropriate data sources
  3. Defines ALM (Application Lifecycle Management) strategy
  4. Ensures integration with external systems
  5. Sets up environment governance and security

Here’s a detailed breakdown of a Power Apps Architect’s roles and responsibilities, structured into key areas. This is useful for organizational planning.

🧠 

Power Apps Architect: Detailed Roles & Responsibilities

🔷 1. 

Solution Design & Architecture

  1. Lead end-to-end architecture of business apps using Power Apps, Dataverse, and Power Automate.
  2. Choose between Canvas, Model-Driven, or Power Pages based on business need.
  3. Design data models, entity relationships, security models, and business logic.
  4. Ensure alignment with enterprise architecture and scalability goals.

📌 Example: Designing a scalable CRM using Dataverse, Model-Driven Apps, and role-based access.

🔷 2. 

Governance & Security

  1. Define and implement governance policies, including:
  2. DLP (Data Loss Prevention) rules
  3. Environment strategy (Dev/Test/Prod separation)
  4. App usage monitoring

  5. Manage data access policies, role-based security, and field-level restrictions.
  6. Collaborate with IT/security teams to align with compliance needs (e.g., GDPR, HIPAA).

📌 Example: Preventing data leakage by blocking non-business connectors in Canvas Apps.

🔷 3. 

Data Strategy & Integration

  1. Architect data models using Dataverse, SharePoint, SQL, or Azure services.
  2. Design integrations with:
  3. External APIs (REST/SOAP)
  4. Dynamics 365
  5. Azure Functions, Service Bus
  6. ERP/legacy systems

  7. Build or oversee Custom Connectors when needed.

📌 Example: Integrating Power Apps with SAP via Azure Logic Apps or custom connector.

🔷 4. 

Application Lifecycle Management (ALM)

  1. Implement CI/CD pipelines using:
  2. Power Platform Build Tools
  3. GitHub Actions or Azure DevOps

  4. Define solution management (managed vs unmanaged)
  5. Set up version control and deployment pipelines

📌 Example: Automating solution export/import using Azure DevOps pipelines.

🔷 5. 

Best Practices & Performance Tuning

  1. Enforce delegation-aware design
  2. Use component libraries, reusable flows, and canvas app templates
  3. Audit app performance using monitor tools and diagnostic logging

📌 Example: Refactoring canvas app to use Concurrent() and limit delegation issues.

🔷 6. 

Mentorship and Leadership

  1. Guide developers, analysts, and business users on:
  2. App design
  3. Reusability and modularity
  4. UX standards and accessibility

  5. Conduct code reviews, architecture reviews, and design sessions

📌 Example: Reviewing junior dev’s Canvas App for delegation issues and design consistency.

🔷 7. 

Power Platform Governance Framework

  1. Contribute to or establish:
  2. Environment strategies (per department or lifecycle stage)
  3. Naming conventions
  4. App ownership policies
  5. User support models

📌 Example: Deploying the Microsoft CoE Starter Kit and customizing it for organization-wide usage.

🔷 8. 

Stakeholder Communication

  1. Translate business requirements into technical solutions.
  2. Prepare and present architecture diagrams, solution overviews, and roadmaps.
  3. Collaborate with product owners, PMs, and IT teams.

📌 Example: Presenting Power Apps strategy to senior stakeholders with ROI projections.

🔷 9. 

Innovation & Future Planning

  1. Stay updated with latest features (e.g., Power Fx updates, Copilot, AI Builder)
  2. Explore AI Builder, Power Virtual Agents, custom pages, and Dataverse extensibility
  3. Recommend enhancements and roadmap planning for app modernization

🧾 Bonus Skills for a Power Apps Architect:

Skill AreaTools/Concepts
ALM & DevOpsAzure DevOps, GitHub, Pipelines
Data PlatformsDataverse, SQL Server, SharePoint
SecurityAzure AD, DLP, Role-based security
Low-Code/Pro Dev FusionCustom APIs, JavaScript for PCF controls
MonitoringPower Platform Admin Center, CoE Kit
IntegrationREST, Logic Apps, Service Bus

Friday, July 18, 2025

"Zero to Hero” Power Apps Interview Guide

 Here’s a “Zero to Hero” Power Apps Interview Guide – a comprehensive list of interview questions with detailed answers for beginners to advanced (up to PL-400 level). This is designed for freshers, intermediate, and experienced developers aiming to crack Power Apps Developer interviews.


🏁 Stage 1: Beginner Level (Fundamentals)

1. What is Power Apps?

Answer:
Power Apps is a low-code/no-code development platform from Microsoft that allows users to build custom business applications quickly using prebuilt templates, drag-and-drop functionality, and connectors to hundreds of data sources.


2. What are the types of Power Apps?

Answer:

  1. Canvas Apps – Design pixel-perfect UI using a drag-and-drop canvas.

  2. Model-Driven Apps – Data-first apps with auto-generated UI based on Dataverse schema.

  3. Power Pages (Portals) – External-facing websites connected to Dataverse.


3. What is the difference between Canvas and Model-Driven Apps?

FeatureCanvas AppModel-Driven App
UI ControlFully customizableAuto-generated
Data SourceMultipleMostly Dataverse
Target AudienceCitizen/Pro DevelopersBusiness Users

4. What is Dataverse?

Answer:
Microsoft Dataverse is a secure, scalable, and relational data platform for storing and managing data used by Power Platform apps.


5. How do you connect Power Apps to a data source?

Answer:
Using built-in connectors. For example:

  • SharePoint

  • SQL Server

  • Dataverse

  • Excel

  • Outlook

  • Custom APIs

Use Data pane → Add data → Choose connector.


⚙️ Stage 2: Intermediate Level (Core Developer Skills)

6. What are collections in Power Apps?

Answer:
Collections are in-memory data tables. Useful for offline access, temporary storage, or bulk operations.

  • Collect() – Adds data.

  • ClearCollect() – Clears and then adds data.

  • Remove() – Deletes from collection.

powerapps
ClearCollect(colEmployees, EmployeesList)

7. Explain Set() vs UpdateContext()

  • Set(): Creates a global variable (available across screens).

  • UpdateContext(): Creates a local variable (screen-specific).

powerapps
Set(varUser, "Ravi") UpdateContext({showPopup: true})

8. What is delegation?

Answer:
Delegation is the process of pushing data-processing logic to the data source to avoid performance issues.

  • Delegable: Filter(), Sort(), LookUp()

  • Non-Delegable: AddColumns(), CountIf()

Avoid using non-delegable functions on large data sources.


9. How do you write CRUD operations using Patch()?

Create:

powerapps
Patch(Employees, Defaults(Employees), {Name: "Ravi", Age: 25})

Update:

powerapps
Patch(Employees, ThisItem, {Age: 26})

Delete:

powerapps
Remove(Employees, ThisItem)

10. How do you use Power Automate with Power Apps?

Answer:

  • Create a flow with trigger “Power Apps”.

  • Add required actions (email, approvals, etc.).

  • Call it from Power Apps:

powerapps
MyFlow.Run("param1", "param2")

🚀 Stage 3: Real-Time Scenarios

11. A gallery is not showing data. What do you check?

  • Is data source connected correctly?

  • Is Filter() formula returning data?

  • Are there delegation warnings?

  • Is the app published with correct version?


12. How do you show a success message after saving a form?

powerapps
SubmitForm(Form1); Notify("Record submitted successfully", NotificationType.Success)

13. How do you show/hide controls based on roles?

powerapps
If(User().Email = "admin@domain.com", true, false)

OR use a SharePoint list or Dataverse table with user-role mapping.


14. How do you filter dropdowns based on another dropdown?

powerapps
Filter(States, Country = ddlCountry.Selected.Value)

15. How do you add offline capability to Canvas App?

Use SaveData() and LoadData():

powerapps
SaveData(colLocalData, "localCache") LoadData(colLocalData, "localCache", true)

🧠 Stage 4: Advanced Level (PL-400/Architect Level)

16. What is a Custom Connector?

Answer:
Custom Connector allows Power Apps to connect to any REST API. You define:

  • Request methods (GET, POST)

  • Auth type (API Key, OAuth)

  • Sample responses


17. How do you implement security in Power Apps?

  • Control access with Azure AD security groups

  • Apply role-based access using logic:

powerapps
If(CurrentUserRole = "Manager", DisplayFormScreen, AccessDeniedScreen)
  • Secure data via Dataverse role-based security or SharePoint permissions


18. What is the Monitor Tool?

Answer:
The Monitor tool helps debug performance and logic issues by showing all events, function calls, and errors in real-time.


19. How do you manage environments in Power Platform?

  • Use Solutions to package apps, flows, and resources.

  • Use Environment variables for URLs or keys.

  • Move solutions using Export/Import or ALM pipelines.


20. What are DLP Policies in Power Platform?

Answer:
Data Loss Prevention (DLP) policies prevent mixing risky connectors.
Example: Block combining SharePoint (business data) with Twitter (non-business).

Defined in Power Platform Admin Center.